home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / hypercrd / hc1_2_x / smrtslds.sit / SmartSlides 1.1 Demo / background_2635.txt < prev    next >
Text File  |  1990-06-12  |  123KB  |  4,973 lines

  1. -- background: 2635 from stack: in.1 Demo
  2. -- bmap block id: 3300
  3. -- flags: 4000
  4. -- background id: 0
  5. -- name: work
  6. ----- HyperTalk script -----
  7.  
  8. ------------------------Major Event Handlers----------------------------
  9.  
  10. on openCard
  11.   global Linking
  12.   if the number of buttons > 0 and not Linking
  13.   then
  14.   send mouseDown to button "opener"
  15.   send mouseUp to button "opener"
  16. end if
  17. end openCard
  18.  
  19. on closeCard
  20.   global Linking, Mode
  21.   if not Linking then put empty into Mode
  22.   set the textArrows to false
  23.   wait 60
  24. end closeCard
  25.  
  26. on openBackground
  27.   global WorkMenu, FieldMenu, XtraMenu, ButnMenu, DrawMenu, FieldsLocked
  28.  
  29.   if FieldsLocked then
  30.     put "Unlock All┬á" into locker
  31.   else put "Lock All┬á" into locker
  32.  
  33.   if the icon of background button id 26 is 0 then
  34.     put "Show Tools┬á" into shower
  35.   else
  36.     put "Hide Tools┬á" into shower
  37.   end if
  38.  
  39.   if the visible of field "CardNumber" is false then
  40.     put "Show Slide Numbers┬á" into ShowNo
  41.   else
  42.     put "Hide Slide Numbers┬á" into ShowNo
  43.   end if
  44.  
  45.   put NewMenu("Work","About SmartSlides┬á","(-",shower,"New LectureΓǪ", "Make Next Slide┬á","Set EffectsΓǪ","Reset Slide┬á","Reset All Slides┬á", ShowNo,"Sort Slides┬á","Prepare To Print┬á","(-","AutoReset┬á") into WorkMenu
  46.  
  47.   if true is in the name of field id 306
  48.   then
  49.   CheckMenu WorkMenu,13,true
  50. end if
  51.  
  52. put NewMenu("Field","Title┬á","Body┬á","FullSlide┬á","BigType┬á", "PopUp┬á","ShimmerField┬á","Bulger┬á","Rectangle┬á","Scrolling┬á", "TypeWriterΓǪ","AutoScrollΓǪ","ColumnsΓǪ","(-",locker) into FieldMenu
  53.  
  54. put NewMenu("Xtra","Chicago 12ΓǪ","Geneva 12ΓǪ","SmartTimes 18ΓǪ", "SmartTimes 24ΓǪ","SmartBig     36ΓǪ","SmartBasel 48ΓǪ","Other FontΓǪ", "(-","Squeeze Lines┬á","Change StyleΓǪ","Set Scroll RateΓǪ", "(-","LeftAlignΓǪ","CenterΓǪ","RightAlignΓǪ") into XtraMenu
  55.  
  56. put NewMenu("Butn","Begin ChainΓǪ","(-","Hiliter┬á","Tile HiliterΓǪ", "Flasher┬á","Inverter┬á","GreyOut┬á","Shutter┬á","Mask┬á","ShrinkerΓǪ", "Stepper┬á","Vanilla┬á","CheckBox┬á","Arrow┬á","Hand┬á") into ButnMenu
  57.  
  58. put NewMenu("Draw","Straight LineΓǪ","Wavy LineΓǪ","Dotted LineΓǪ", "Straight ArrowΓǪ","Wavy ArrowΓǪ","Dotted ArrowΓǪ", "Border FieldΓǪ","Shadow FieldΓǪ","Connect FieldsΓǪ","GraphΓǪ","(-", "Erase Recent┬á","Erase All Graphics┬á","Protect Visible┬á") into DrawMenu
  59.  
  60. end openBackground
  61.  
  62. on closeBackground
  63.   global WorkMenu, FieldMenu, XtraMenu, ButnMenu, DrawMenu
  64.   put DeleteMenu(WorkMenu) into WorkMenu
  65.   put DeleteMenu(FieldMenu) into FieldMenu
  66.   put DeleteMenu(XtraMenu) into XtraMenu
  67.   put DeleteMenu(ButnMenu) into ButnMenu
  68.   put DeleteMenu(DrawMenu) into DrawMenu
  69. end closeBackground
  70.  
  71. on idle
  72.   global WorkMenu, FieldMenu, XtraMenu, ButnMenu, DrawMenu, lastTick
  73.   if (the ticks-lastTick)>120 then
  74.     put the ticks into lastTick
  75.     ShowMenu WorkMenu
  76.     ShowMenu FieldMenu
  77.     ShowMenu XtraMenu
  78.     ShowMenu ButnMenu
  79.     ShowMenu DrawMenu
  80.   end if
  81.   pass idle
  82. end idle
  83.  
  84. on doMenu Command
  85.   global WorkMenu, FieldMenu, XtraMenu, ButnMenu, DrawMenu
  86.   --dividing commands into two types avoids nesting blocks too deeply.
  87.   --commands whose names involve "ΓǪ" are sent to one handler
  88.   --newly defined commands with non-breaking spaces are sent to another
  89.   --if the optionKey is down then Help Command --handles requests for Help
  90.   --else
  91.   if "ΓǪ" is in Command then FollowUp Command     --for extended commands
  92.   else if "┬á" is in Command then Execute Command --for simple commands
  93.   else pass domenu
  94. end domenu
  95.  
  96. on FollowUp Command
  97.   --handles menu items involving "ΓǪ"
  98.   if the optionkey is down then GiveHelp Command
  99.   else if Command is "New LectureΓǪ" then newLecture           --work
  100.   else if Command is "Set EffectsΓǪ" then SetEffects           --menu
  101.   else if Command is "TypeWriterΓǪ" then MakeTypeWriterField   --field
  102.   else if Command is "AutoScrollΓǪ" then MakeAutoscroll        --menu
  103.   else if Command is "ColumnsΓǪ" then MakeColumns
  104.   else if Command is "Chicago 12ΓǪ" then SetMode "Chicago 12"  --xtra
  105.   else if Command is "Geneva 12ΓǪ" then SetMode "Geneva 12"    --menu
  106.   else if Command is "SmartTimes 18ΓǪ" then SetMode "SmartTimes 18"
  107.   else if Command is "SmartTimes 24ΓǪ" then SetMode "SmartTimes 24"
  108.   else if Command is "SmartBig     36ΓǪ" then SetMode "SmartBig 36"
  109.   else if Command is "SmartBasel 48ΓǪ" then SetMode "SmartBasel 48"
  110.   else if Command is "Other FontΓǪ" then SetMode "Font"
  111.   else if Command is "Change StyleΓǪ" then SetMode "Style"
  112.   else if Command is "Set Scroll RateΓǪ" then SetMode "SetRate"
  113.   else if Command is "LeftAlignΓǪ" then SetMode "left"
  114.   else if Command is "CenterΓǪ" then SetMode "center"
  115.   else if Command is "RightAlignΓǪ" then SetMode "right"
  116.   else if Command is "Begin ChainΓǪ" then BeginChain "withMessage" --butn
  117.   else if Command is "Tile HiliterΓǪ" then SetMode "Tile"          --menu
  118.   else if Command is "ShrinkerΓǪ" then SetMode "ShrinkWrap"
  119.   else if "line" is in Command then MakeLine Command              --draw
  120.   else if "arrow" is in Command then MakeArrow Command            --menu
  121.   else if Command is "Border FieldΓǪ" then SetMode "BorderField"
  122.   else if Command is "Shadow FieldΓǪ" then SetMode "ShadowField"
  123.   else if Command is "Connect FieldsΓǪ" then SetMode "Connect1",2
  124.   else if Command is "GraphΓǪ" then send MakeGraph to field "Scripts"
  125. end FollowUp
  126.  
  127. on Execute Command
  128.   --handles menu items without "ΓǪ" but with non-breaking space
  129.   if the optionkey is down then GiveHelp Command
  130.   else if Command is "Show Tools┬á" then ShowTools          --work
  131.   else if Command is "Hide Tools┬á" then HideTools          --menu
  132.   else if Command is "Make Next Slide┬á" then MakeCard
  133.   else if Command is "Reset Slide┬á" then Reset
  134.   else if Command is "Reset All Slides┬á" then ResetAll
  135.   else if Command is "Show Slide Numbers┬á" then ShowNumber
  136.   else if Command is "Hide Slide Numbers┬á" then HideNumber
  137.   else if Command is "Sort Slides┬á" then SortAll
  138.   else if Command is "Prepare To Print┬á" then PrepForPrinting
  139.   else if Command is "About SmartSlides┬á" then ShowCredits
  140.   else if Command is "AutoReset┬á" then ChangeAutoReset
  141.   else if Command is "Title┬á" then MakeTitleField           --field
  142.   else if Command is "Body┬á" then CreateField 8             --menu
  143.   else if Command is "FullSlide┬á" then CreateField 5
  144.   else if Command is "BigType┬á" then CreateField 76
  145.   else if Command is "PopUp┬á" then MakePopUp
  146.   else if Command is "ShimmerField┬á" then CreateField 205
  147.   else if Command is "Bulger┬á" then CreateField 244
  148.   else if Command is "Rectangle┬á" then CreateField 137
  149.   else if Command is "Scrolling┬á" then CreateField 141
  150.   else if Command is "Lock All┬á" then LockFields
  151.   else if Command is "Unlock All┬á" then UnlockFields
  152.   else if Command is "Squeeze Lines┬á" then SetSqueeze
  153.   else if Command is "End Chain┬á" then EndChain             --butn
  154.   else if Command is "Hiliter┬á" then CreateButton 9         --menu
  155.   else if Command is "Flasher┬á" then CreateButton 82
  156.   else if Command is "Inverter┬á" then CreateButton 292
  157.   else if Command is "GreyOut┬á" then CreateButton 139
  158.   else if Command is "Shutter┬á" then CreateButton 83
  159.   else if Command is "Mask┬á" then CreateButton 79
  160.   else if Command is "Stepper┬á" then CreateButton 140
  161.   else if Command is "Vanilla┬á" then CreateButton 296
  162.   else if Command is "CheckBox┬á" then CreateButton 110
  163.   else if Command is "Arrow┬á" then CreateButton 115
  164.   else if Command is "Hand┬á" then CreateButton 116
  165.   else if Command is "Erase Recent┬á" then UndoDrawing       --draw
  166.   else if Command is "Erase All Graphics┬á" then EraseCard   --menu
  167.   else if Command is "Protect Visible┬á" then NoScripts
  168. end Execute
  169.  
  170. ------------------------Handlers for Menu Items-------------------------
  171. ---(Handlers for menu items in Work Menu are all in the stack script.)--
  172.  
  173. on MakeTitleField
  174.   global Speed, Specs, ObjectID
  175.   put 1000 into Speed
  176.   put "0,0,14,45,488,45" into Specs
  177.   send drawline to field "Scripts"
  178.   put 100 into Speed
  179.   CreateField 3
  180.   lock screen
  181.   set the lockMessages to true
  182.   push card
  183.   go next
  184.   pop card
  185.   set the lockMessages to false
  186.   unlock screen
  187.   select text of card field id ObjectID
  188. end MakeTitleField
  189.  
  190. --(CreateField handler is in stack script.)
  191.  
  192. on MakePopUp
  193.   global ObjectID
  194.   CreateButton 123
  195.   put ObjectID into NewID
  196.   CreateField 122
  197.   put ObjectID into NewFieldID
  198.   choose browse tool
  199.   put NewFieldID into line NewID of field "PopUps"
  200.   set the name of card field id NewFieldId to "PopUp " & NewID
  201.   choose field tool
  202.   select card field id NewFieldID
  203. end MakePopUp
  204.  
  205. --(MakeTypeWriterField handler is in stack script.)
  206.  
  207. --(MakeAutoscroll handler is in stack script.)
  208.  
  209. on MakeColumns
  210.   global ObjectID, AreaOkayID
  211.   lock screen
  212.   requestPatience
  213.   CreateButton 282
  214.   put ObjectID into AreaOkayID
  215.   Createfield 4
  216.   put "Adjust this to the size and location of the area " & "in which you wish the columns to appear." & return & return & "Then restore browse tool" & return & "and click " & quote & "Area Okay" & quote into card field id ObjectID
  217.   unlock screen
  218.   put empty into msg
  219.   hide msg
  220.   select card field id ObjectID
  221. end MakeColumns
  222.  
  223. on FinishColumns
  224.   global FieldsLocked, AreaOkayID
  225.   hide button id AreaOkayID
  226.   set the name of button id AreaOkayID to "Hidden"--faster than deleting
  227.   ask "How Many Columns Do You Want?" with "2"
  228.   if it is empty or it is 0 then exit to HyperCard
  229.   do "put " & it & " into LastColumn"  --converts "one"ΓǪ"ten" to numbers
  230.   answer "What style would you like?" with "Transparent" or "Rectangle" or "Shadow"
  231.   put it into ColumnStyle
  232.   answer "How much space would you like between fields?" with "5 pixels" or "None" or "Overlap"
  233.   if it is "5 pixels" then put 5 into Buffer
  234.   if it is "None" then put 0 into Buffer
  235.   if it is "Overlap" then put -8 into Buffer
  236.   put the rect of card field "Column" into ColumnRect
  237.   put (item 3 of ColumnRect) - (item 1 of ColumnRect) into AreaWidth
  238.   subtract min(buffer,0) from AreaWidth
  239.   put (trunc(AreaWidth/LastColumn) - Buffer) into ColumnWidth
  240.   put (LastColumn*(ColumnWidth + Buffer)) - Buffer into WidthToUse
  241.   put round((AreaWidth-WidthToUse)/2) into Nudge
  242.   add Nudge to item 1 of ColumnRect
  243.   put (item 1 of ColumnRect) + ColumnWidth into item 3 of ColumnRect
  244.   answer "How should text be arranged in a column?" with "LeftJustify" or "Center" or "RightJustify"
  245.   put it into columnAlign
  246.   If "Left" is in columnAlign then put "left" into ColumnAlign
  247.   If "Right" is in columnAlign then put "right" into ColumnAlign
  248.   lock screen
  249.   put empty into card field "Column"
  250.   set the textalign of card field "Column" to ColumnAlign
  251.   set the style of card field "Column" to ColumnStyle
  252.   set the rect of card field "Column" to ColumnRect
  253.   set the locktext of card field "Column" to false
  254.   put false into FieldsLocked
  255.   set the icon of background button id 25 to "UnlockedFields"
  256.   ChangeMenu FieldMenu,14,"Lock All┬á"
  257.   put the id of card field "Column" into FirstColumn
  258.   set the name of card field id FirstColumn to "Column " & FirstColumn
  259.   --assures uniqueness of name used for columns in this set
  260.   select card field id FirstColumn
  261.   domenu "Copy Field"
  262.   unlock screen
  263.   put (FirstColumn - 1) + LastColumn into LastColumn
  264.   repeat with i = (FirstColumn + 1) to LastColumn
  265.     put Buffer + (item 3 of ColumnRect) into item 1 of ColumnRect
  266.     add (ColumnWidth + Buffer) to item 3 of ColumnRect
  267.     domenu "paste field"
  268.     set the rect of card field id i to ColumnRect
  269.   end repeat
  270.   select text of card field id FirstColumn
  271. end FinishColumns
  272.  
  273.  
  274. --(LockFields handler is in stack script.)
  275.  
  276. --(UnlockFields handler is in stack script.)
  277.  
  278. on SetMode this,clicks
  279.   global Mode
  280.   lockFields
  281.   put this into Mode
  282.   RequestClick clicks
  283. end SetMode
  284.  
  285. on SetSqueeze
  286.   global squeezer, XtraMenu
  287.   if Squeezer is true then
  288.     put false into Squeezer
  289.     CheckMenu XtraMenu,9,False
  290.   else
  291.     put true into Squeezer
  292.     CheckMenu XtraMenu,9,True
  293.   end if
  294. end SetSqueeze
  295.  
  296. --(CreateButton handler is in stack script.)
  297.  
  298. on BeginChain which
  299.   global Mode, ButnMenu
  300.   put "First" into Mode
  301.   showChainTools
  302.   if which is "withMessage" then
  303.     show msg at 15,320
  304.     put "Click buttons in chain, then use End Chain (on Buttons menu)."
  305.   end if
  306.   ChangeMenu ButnMenu,1,"End Chain┬á"
  307.   set the hilite of background button id 99 to true
  308.   lockFields
  309. end BeginChain
  310.  
  311. on EndChain
  312.   global Mode, ButnMenu, Linking
  313.   if the visible of background button id 99 is false
  314.   then
  315.   hideChainTools
  316. end if
  317. hide msg
  318. put empty into Mode
  319. put false into Linking
  320. set the hilite of background button id 99 to false
  321. ChangeMenu ButnMenu,1,"Begin ChainΓǪ"
  322. end EndChain
  323.  
  324. on MakeLine whichKind
  325.   global lineFlag, LineStyle, NextLine, Mode, ObjectID
  326.   put word 1 of whichKind into LineStyle
  327.   put 1 into lineFlag
  328.   put "Line" into Mode
  329.   lockFields
  330.   requestPatience
  331.   lock screen
  332.   createButton 124
  333.   choose browse tool
  334.   set the name of button ID ObjectID to "Draw┬á" & whichkind
  335.   put ObjectID into NextLine
  336.   unlock screen
  337.   beep
  338.   requestClick 2
  339. end MakeLine
  340.  
  341. on MakeArrow ArrowStyle
  342.   global lineFlag, LineStyle, NextLine, Mode, ObjectID
  343.   put word 1 of ArrowStyle into LineStyle
  344.   put 3 into lineFlag
  345.   put "Line" into Mode
  346.   requestPatience
  347.   lock screen
  348.   createButton 124
  349.   choose browse tool
  350.   set the name of button ID ObjectID to "Draw┬á" & ArrowStyle
  351.   put ObjectID into NextLine
  352.   lockFields
  353.   unlock screen
  354.   beep
  355.   requestClick 2
  356. end MakeArrow
  357.  
  358. on UndoDrawing
  359.   choose eraser tool
  360.   doMenu "Revert"
  361.   choose browse tool
  362. end UndoDrawing
  363.  
  364. on EraseCard
  365.   choose select tool
  366.   domenu "Select All"
  367.   domenu "Clear Picture"
  368.   choose browse tool
  369.   lock screen
  370.   set the lockmessages to true
  371.   go next
  372.   go previous
  373.   set the lockmessages to false
  374.   unlock screen
  375. end EraseCard
  376.  
  377. --(NoScripts handler is in stack script.)
  378.  
  379. ---------------------Main Handlers for MouseClicks----------------------
  380.  
  381. on mouseDown
  382.   global ThisObject, Mode, NextObject, ObjectName, Shift
  383.   put the shiftKey into Shift
  384.   put the ID of the target into ThisObject
  385.   put ThisObject into NextObject
  386.   put the short name of the target into ObjectName
  387.   if Mode is empty  then FollowChain
  388.   else if Mode is "Line" then send Draw to field "Scripts" --create line
  389.   else if Mode is "First" then ChainFirst    --put first Object in chain
  390.   else if Mode is "Next" then ChainNext      --put later object in chain
  391.   else Modify                                --alter field
  392. end MouseDown
  393.  
  394. on mouseUp
  395.   global NextObject, Chain, Mode, ObjectName
  396.   if Mode is not empty then exit to HyperCard
  397.   else
  398.     repeat with i = 1 to the number of words in Chain
  399.       put word i of Chain into NextObject
  400.       if "L" is in NextObject
  401.       then
  402.       delete first char of NextObject
  403.       visual effect iris close to black
  404.       visual effect iris open to card
  405.       go to card id nextobject
  406.       exit mouseUp
  407.     end if
  408.     put line NextObject of field "ObjectNames" into ObjectName
  409.     ClickUp                         --activate next object in chain
  410.   end repeat
  411. end if
  412. unlock screen
  413. end MouseUp
  414.  
  415. -----------------Supporting Handlers for MouseDown----------------------
  416.  
  417. on FollowChain
  418.   global ThisObject, NextObject, Step, Chain, ObjectName, Linking
  419.   if "card" is in ThisObject and not Linking then exit to HyperCard
  420.   if ObjectName is "Link" then exit to HyperCard
  421.   --else follow chain starting here
  422.   put item 1 of line ThisObject of field "Chains" into Step
  423.   put item (Step + 1) of line ThisObject of field "Chains" into Chain   --existing chain corresponding to current step
  424.   if Chain is empty then
  425.     put ThisObject into Chain
  426.     put ObjectName into line ThisObject of field "ObjectNames"
  427.   end if
  428.   repeat with i = 1 to the number of words in Chain
  429.     put word i of Chain into NextObject
  430.     if "L" is in NextObject then next repeat --link to card later
  431.     put line NextObject of field "ObjectNames" into ObjectName
  432.     ClickDown                       --activate next object in chain
  433.   end repeat
  434. end FollowChain
  435.  
  436. on ClickDown
  437.   global NextObject, ObjectName, NextLine, Mode
  438.   put NextObject into NextLine
  439.   if "Draw┬á" is in ObjectName then send GetLines to field "Scripts"
  440.   else if "Shrinker" is in ObjectName then Shrink NextObject
  441.   else if ObjectName is "Hiliter" or ObjectName is "Hand"
  442.   then set the hilite of button id NextObject to true
  443. else if ObjectName is "Inverter"
  444. then set the hilite of button id NextObject to false
  445. else if ObjectName is "GreyOut" then GreyOut NextObject
  446. else if ObjectName is "Mask" then hide button id NextObject
  447. else if ObjectName is "Flasher" then doFlashing NextObject
  448. else if ObjectName is "Shutter" then doShutter NextObject
  449. else if ObjectName is "PopItUp" then doPopUp NextObject
  450. else if "PopUp" is in ObjectName then hide card field id NextObject
  451. else if "DingBat" is in ObjectName then doDingBat NextObject
  452. else if ObjectName is "Delay" then wait 60
  453. else if ObjectName is "Beep" then beep
  454. else if ObjectName is "LockScreen" then ChangeScreenLock
  455. else if ObjectName is "Shimmer" then Shimmer NextObject
  456. else if ObjectName is "Bulger" then Bulge NextObject
  457. else if ObjectName is "TypeWriter" then doTyping NextObject
  458. else if ObjectName is "Opener" then exit ClickDown
  459. else if "AutoScroller" is in ObjectName
  460. then send autoscroll to card field id NextObject
  461. else if "Step" is in ObjectName then checkShift
  462. else if ObjectName is "Graph" then send drawgraph to field "Scripts"
  463. else if ObjectName is "Vanilla" then exit ClickDown
  464. else SelectLine
  465. end ClickDown
  466.  
  467. --(Shrink handler is in stack script.)
  468.  
  469. on GreyOut given
  470.   choose rectangle tool
  471.   set the filled to true
  472.   set the pattern to 13
  473.   put topleft of button id given into corner1
  474.   put bottomright of  button id given into corner2
  475.   add 1 to item 1 of corner1
  476.   add 1 to item 2 of corner1
  477.   subtract 1 from item 1 of corner2
  478.   subtract 1 from item 2 of corner2
  479.   drag from corner1 to corner2 with optionkey
  480.   set the filled to false
  481.   choose browse tool
  482. end GreyOut
  483.  
  484. on ClearFromGrey
  485.   global NextObject
  486.   choose select tool
  487.   put topleft of button id NextObject into corner1
  488.   put bottomright of  button id NextObject into corner2
  489.   --add 1 to item 1 of corner1
  490.   --add 1 to item 2 of corner1
  491.   --subtract 1 from item 1 of corner2
  492.   --subtract 1 from item 2 of corner2
  493.   drag from corner1 to corner2
  494.   doMenu "Clear Picture"
  495.   choose browse tool
  496. end ClearFromGrey
  497.  
  498. on doFlashing given
  499.   global FlashNumber, ShortDelay, LongDelay
  500.   repeat with i = 1 to FlashNumber
  501.     wait ShortDelay
  502.     set the hilite of button id given to not the hilite of button id given
  503.     wait LongDelay
  504.     set the hilite of button id given to not the hilite of button id given
  505.   end repeat
  506. end doFlashing
  507.  
  508. on doShutter given
  509.   if the style of button id given is "opaque"
  510.   then
  511.   set the style of button id given to "transparent"
  512. else
  513.   set the style of button id given to "opaque"
  514. end if
  515. end doShutter
  516.  
  517. on doPopUp given
  518.   put item 1 of line given of field "PopUps" into FieldToPop
  519.   show card field id FieldToPop
  520. end doPopUp
  521.  
  522. on doDingBat given
  523.   global ObjectName
  524.   if "CheckBox" is in ObjectName then doCheckBox given
  525.   else if "Arrow" is in ObjectName then doArrowIcon given
  526. end doDingBat
  527.  
  528. on doCheckBox given
  529.   if the icon of button id given is 10454 then set the icon of button id given to 23664
  530.   else set the icon of button id given to 10454
  531. end doCheckBox
  532.  
  533. on doArrowIcon given
  534.   if the icon of button id given is 2415 then set the icon of button id given to 2148
  535.   else set the icon of button id given to 2415
  536. end doArrowIcon
  537.  
  538. on ChangeScreenLock
  539.   set the lockscreen to not the lockscreen
  540. end ChangeScreenLock
  541.  
  542. on Shimmer given
  543.   repeat with i = 1 to 6
  544.     set the style of card field id given to opaque
  545.     set the style of card field id given to shadow
  546.   end repeat
  547. end Shimmer
  548.  
  549. on Bulge given
  550.   repeat with i = 1 to 5
  551.     set the textsize of card field ID given to 18
  552.     wait 3
  553.     set the textsize of card field ID given to 24
  554.     wait 20
  555.     set the textsize of card field ID given to 12
  556.     wait 10
  557.   end repeat
  558. end Bulge
  559.  
  560. --(DoTyping handler is in stack script.)
  561.  
  562. on checkShift
  563.   global NextObject, Shift
  564.   if Shift is down then
  565.     put the number of Button ID NextObject into wanted
  566.     RestoreStep wanted
  567.     exit to HyperCard
  568.   end if
  569. end checkShift
  570.  
  571. on SelectLine
  572.   global ThisObject
  573.   if word 1 of the long name of the target is not "card"
  574.   then exit to HyperCard
  575.   if word 2 of the long name of the target is not "field"
  576.   then exit to HyperCard
  577.   if the style of card field id ThisObject is "scrolling"
  578.   then
  579.   put clickline() into ThisLine
  580.   if line thisLine of card field id ThisObject is empty
  581.   then
  582.   select empty
  583. else
  584.   select line ThisLine of card field id ThisObject
  585. end if                                   --may scroll field a bit!
  586. exit to HyperCard
  587. end if
  588. end SelectLine
  589.  
  590. on ChainFirst
  591.   global ThisObject, Mode, Step, MainObject, ObjectName, NextObject
  592.   if ObjectName is "Link"
  593.   then
  594.   endChain
  595.   answer "Can't begin chain with link to another card."
  596.   exit to HyperCard
  597. end if
  598. put word 2 of the long name of the target into ObjectType
  599. put ObjectName into line ThisObject of field "ObjectNames"
  600. if ObjectType is "button" then QuickHilite ThisObject
  601. put item 1 of line ThisObject of field "Chains" into Step
  602. if Step is empty then
  603.   put 1 into Step
  604.   put 1 into line ThisObject of field "Chains"
  605. end if
  606. put ThisObject into MainObject
  607. put MainObject into item (Step + 1) of line MainObject of field "Chains"  --assures an item
  608. if "Shrinker" is in ObjectName then Shrink ThisObject
  609. if ObjectName is "PopItUp" then DoPopUp ThisObject
  610. if "PopUp" is in ObjectName then hide card field id ThisObject
  611. if ObjectName is "Mask" then hide button id ThisObject
  612. if "DingBat" is in ObjectName then doDingBat ThisObject
  613. put ThisObject into NextObject
  614. if "Step" is in ObjectName
  615. then
  616. changeStep
  617. put Step - 1 into Step
  618. end if
  619. put "Next" into Mode
  620. end ChainFirst
  621.  
  622. on QuickHilite this
  623.   set the hilite of button id This to not the hilite of button id This
  624.   set the hilite of button id This to not the hilite of button id This
  625. end QuickHilite
  626.  
  627. on changeStep
  628.   global NextObject, ObjectName, Mode, Step
  629.   add 1 to Step
  630.   put Step into item 1 of line NextObject of field "Chains"
  631.   put item (Step + 1) of line NextObject of field "Chains" into NChain
  632.   if Mode is empty or mode is "First" then
  633.     if NChain is empty or NChain is NextObject
  634.     then
  635.     set the name of button ID NextObject to "Step (" & Step & ")"
  636.   else
  637.     set the name of button ID NextObject to "Step " & Step
  638.   end if
  639. end if
  640. end changeStep
  641.  
  642. on ChainNext
  643.   global ThisObject, Step, MainObject, ObjectName, Linking, Mode
  644.   put word 2 of the long name of the target into ObjectType
  645.   if ObjectName is not "link" and not linking then put ObjectName into line ThisObject of field "ObjectNames"
  646.   if Linking
  647.   then
  648.   put "L" & word 3 of the id of this card into ThisObject
  649.   pop card
  650.   put empty into msg
  651.   put empty into ObjectType
  652.   put empty into ObjectName
  653.   hide msg
  654.   endChain
  655.   showTools
  656. end if
  657. If ObjectName is "Link" and not Linking
  658. then
  659. GetLink
  660. exit to HyperCard
  661. else
  662.   if ObjectType is "button" then QuickHilite ThisObject
  663. end if
  664. put " " & ThisObject after item (Step + 1) of line MainObject of field "Chains"
  665. if ObjectName is "PopItUp" then DoPopUp ThisObject
  666. if "PopUp" is in ObjectName then hide card field id ThisObject
  667. if "Shrinker" is in ObjectName then Shrink ThisObject
  668. if ObjectName is "Mask" then hide button id ThisObject
  669. if "DingBat" is in ObjectName then doDingBat ThisObject
  670. end ChainNext
  671.  
  672. on GetLink
  673.   global Linking, Origin
  674.   put true into Linking
  675.   put the id of this card into Origin
  676.   push card
  677.   hidetools
  678.   requestcard
  679. end GetLink
  680.  
  681. on Modify
  682.   global Mode, Frame, Rect1, Rect2, Chain
  683.   put empty into Chain
  684.   put the long name of the target into longname
  685.   if word 1 of longname is "card" and word 2 of longname is "id"
  686.   then exit Modify
  687.   put the rect of the target into Frame
  688.   lock screen
  689.   set the cursor to busy
  690.   If Mode is "Connect1" then put Frame into Rect1
  691.   else if Mode is "Connect2" then
  692.     put Frame into Rect2
  693.     send ConnectFields to field "Scripts"
  694.   else if Mode is "shrinkwrap" then ShrinkWrap
  695.   else if Mode is "tile" then tile
  696.   else if "toggle" is in Mode then toggle
  697.   else if Mode is "Chicago 12" then SetFont
  698.   else if Mode is "Geneva 12" then SetFont
  699.   else if Mode is "SmartTimes 18" then SetFont
  700.   else if Mode is "SmartTimes 24" then SetFont
  701.   else if Mode is "SmartBig 36" then SetFont
  702.   else if Mode is "SmartBasel 48" then SetFont
  703.   else if Mode is "Font" then ChooseFont
  704.   else if Mode is "Style" then ChooseStyle
  705.   else if Mode is "SetRate" then SetRate
  706.   else if Mode is "BorderField" then send BorderField to field "Scripts"
  707.   else if Mode is "ShadowField" then send ShadowField to field "Scripts"
  708.   else
  709.     align
  710.   end if
  711.  
  712.   hide msg
  713.   if Mode is "Connect1" then put "Connect2" into Mode
  714.   else
  715.     put empty into Mode
  716.     unlockFields
  717.   end if
  718.   choose browse tool
  719.   beep
  720. end Modify
  721.  
  722. ------------------Supporting Handlers for MouseUp-----------------------
  723.  
  724.  
  725. on ClickUp
  726.   global NextObject, ObjectName
  727.   if ObjectName is "Hiliter" or ObjectName is "Hand"
  728.   then set the hilite of button id NextObject to false
  729. else if ObjectName is "Inverter"
  730. then set the hilite of button id NextObject to true
  731. else if ObjectName is "GreyOut" then ClearFromGrey
  732. else if ObjectName is "LockScreen" then ChangeScreenLock
  733. else if "Step" is in ObjectName then ChangeStep
  734. end ClickUp
  735.  
  736. on GetLink
  737.   global Linking
  738.   put true into Linking
  739.   push card
  740.   hidetools
  741.   requestcard
  742. end GetLink
  743.  
  744. on ChooseFont
  745.   choose Field tool
  746.   select the target
  747.   domenu "Text Style..."
  748.   choose browse tool
  749. end ChooseFont
  750.  
  751. on ChooseStyle
  752.   choose Field tool
  753.   select the target
  754.   domenu "Field Info..."
  755.   choose browse tool
  756. end ChooseStyle
  757.  
  758. on align                       --sets textalign property of target field
  759.   global Mode
  760.   if mode is "left" or mode is "center" or mode is "right" then
  761.     set the textAlign of the target to Mode
  762.     unlockFields
  763.   end if
  764. end align
  765.  
  766. on ShrinkWrap
  767.   global ObjectNumber, ObjectID
  768.   put the id of the target into thisField
  769.   put the rect of card field id thisField into rectWanted
  770.   put the textHeight of card field id thisField into Increment
  771.   add 1 to item 2 of rectWanted           --fudging location of top edge
  772.   if increment > 20 then add 1 to item 2 of rectWanted    --more fudging
  773.   Choose button tool
  774.   set the cursor to busy
  775.   show background button "Shrinker"
  776.   select background button "Shrinker"
  777.   doMenu "Copy Button"
  778.   doMenu "Paste Button"
  779.   hide background button "Shrinker"
  780.   put the number of card buttons into ObjectNumber
  781.   put the ID of button ObjectNumber into ObjectID
  782.   set the cursor to busy
  783.   set the rect of button ObjectNumber to rectWanted
  784.   set the name of button ObjectNumber to "Shrinker " & Increment
  785.   set the cursor to busy
  786.   put rectWanted into line ObjectID of field "ButtonRects"
  787. end ShrinkWrap
  788.  
  789. on tile
  790.   global ObjectNumber
  791.   put the id of the target into thisField
  792.   put the rect of card field id thisField into rectWanted
  793.   add 2 to item 2 of rectWanted
  794.   put the textHeight of card field id thisField into Increment
  795.   set the cursor to busy
  796.   put item 4 of rectWanted into BottomEdge
  797.   put (item 2 of rectWanted) + increment into item 4 of rectWanted
  798.   Choose button tool
  799.   show background button "Hiliter"
  800.   select background button "Hiliter"
  801.   doMenu "Copy Button"
  802.   hide background button "Hiliter"
  803.   set the cursor to busy
  804.   put 1 into lineNumber
  805.   repeat while (item 2 of rectWanted) < BottomEdge
  806.     if line lineNumber of card field id thisField is not empty then
  807.       doMenu "Paste Button"
  808.       put the number of card buttons into ObjectNumber
  809.       set the rect of button ObjectNumber to rectWanted
  810.       beep
  811.     end if
  812.     add increment to item 2 of rectWanted
  813.     add increment to item 4 of rectWanted
  814.     add 1 to lineNumber
  815.     if (item 4 of rectWanted) > BottomEdge
  816.     then
  817.     put BottomEdge into item 4 of rectWanted
  818.   end if
  819.   set the cursor to busy
  820. end repeat
  821. lockFields
  822. end tile
  823.  
  824. on newbutton
  825.   --puts warning and uniform scripts in all new buttons,
  826.   --created using "New Button" in the Objects menu.
  827.  
  828.   if the short name of the target is "New Button"
  829.   then
  830.   set the script of the target to StockScript("button")
  831.   pass newButton
  832. end if
  833. end newbutton
  834.  
  835. on newField
  836.   --puts warning and uniform scripts in all new fields,
  837.   --created using "New Field" in the Objects menu.
  838.  
  839.   put the short name of the target into FldName
  840.   if "card field id" is in FldName or "bkgnd field id" is in FldName
  841.   then
  842.   set the script of the target to StockScript("field")
  843.   pass newField
  844. end if
  845. end newField
  846.  
  847. function StockScript object
  848. put "--To avoid interfering with the way SmartSlides " & "handles mouseclicks," & return into NewScript
  849. put "--be sure to keep both a mouseUp and a mouseDown handler" & return after NewScript
  850. put "--in the script of this " & object & "." after NewScript
  851. put return & return after NewScript
  852. put "on mouseDown" & return & "end mouseDown" &return after NewScript
  853. put return after NewScript
  854. put "on mouseUp" & return & "end mouseUp" & return after NewScript
  855. return NewScript
  856. end StockScript
  857.  
  858. on deleteButton
  859.   global Deleted
  860.   if word 1 of the long name of the target is not "card" then
  861.     choose browse tool
  862.     exit to HyperCard
  863.   end if
  864.   put the id of the target into Deleted
  865.   if "CursorCover" is in the short name of the target then --block deletion, so Typewriter field will still work properly
  866.     choose browse tool
  867.   end if
  868.   if "PopItUp" is in the short name of the target then
  869.     send mouseDown to the target
  870.     put "Deleting PopUp field will delete button too."
  871.     choose browse tool
  872.   end if
  873.   EditOut
  874. end deleteButton
  875.  
  876. on deleteField
  877.   global Deleted
  878.   if word 1 of the long name of the target is not "card"
  879.   then
  880.   choose browse tool
  881.   exit to HyperCard
  882. end if
  883. put the short name of the target into ObjectName
  884. put the id of the target into Deleted
  885. EditOut
  886. if ObjectName is "TypeWriter" then
  887.   put Deleted into SaveID
  888.   set the name of card field ID Deleted to "ClearThis"
  889.   set the name of card button ("CursorCover "& Deleted) to "ClearThis"
  890.   select card button "ClearThis"
  891.   domenu "Clear Button"
  892.   select card field "ClearThis"
  893.   domenu "Clear Field"
  894. else if "PopUp" is in ObjectName then
  895.   put Deleted into SaveID
  896.   set the name of card field ID Deleted to "ClearThis"
  897.   set the name of card button id (word 2 of ObjectName) to "ClearThis"
  898.   put empty into line (word 2 of ObjectName) of field "PopUps"
  899.   put true into FieldIsEmpty
  900.   repeat with i = 1 to the number of lines of field "PopUps"
  901.     if line i of field "PopUps" is not empty
  902.     then
  903.     put false into FieldIsEmpty
  904.     exit repeat
  905.   end if
  906. end repeat
  907. if FieldIsEmpty then put empty into field "PopUps"
  908. select card button id (word 2 of ObjectName)
  909. domenu "Clear Button"
  910. select card field id SaveId
  911. domenu "Clear Field"
  912. hide msg
  913. end if
  914. end deleteField
  915.  
  916. on deleteCard
  917.   if the number of the target is the number of cards of this background
  918.   then
  919.   send closeBackground to this background
  920. end if
  921. end deleteCard
  922.  
  923. on EditOut
  924.   global Deleted
  925.   put empty into line Deleted of field "Chains"
  926.   put empty into line Deleted of field "ObjectNames"
  927.   if Deleted is in field "Chains"
  928.   then
  929.   repeat with i = 1 to the number of lines of field "Chains"
  930.     if deleted is in line i of field "Chains" then
  931.       repeat with j = (the number of items of line i of field "Chains") down to 2
  932.         repeat with k = (the number of words of item j of line i of field "Chains") down to 2
  933.           if word k of item j of line i of field "Chains" is deleted
  934.           then put empty into word k of item j of line i of field "Chains"
  935.         end repeat
  936.       end repeat
  937.     end if
  938.   end repeat
  939. end if
  940. end EditOut
  941.  
  942.  
  943.  
  944. -- part 213 (button)
  945. -- low flags: 80
  946. -- high flags: 0002
  947. -- rect: left=8 top=0 right=298 bottom=487
  948. -- title width / last selected line: 0
  949. -- icon id / first selected line: 0 / 0
  950. -- text alignment: 1
  951. -- font id: 0
  952. -- text size: 12
  953. -- style flags: 0
  954. -- line height: 16
  955. -- part name: ╩BackDrop
  956. ----- HyperTalk script -----
  957. on mouseUp
  958. end mouseUp
  959.  
  960. on mouseDown
  961. end mouseDown
  962.  
  963.  
  964. -- part 1 (button)
  965. -- low flags: 00
  966. -- high flags: 0000
  967. -- rect: left=228 top=318 right=341 bottom=254
  968. -- title width / last selected line: 0
  969. -- icon id / first selected line: 1014 / 1014
  970. -- text alignment: 1
  971. -- font id: 0
  972. -- text size: 12
  973. -- style flags: 0
  974. -- line height: 16
  975. -- part name: Prev
  976. ----- HyperTalk script -----
  977. on mouseUp
  978.   if true is in the name of field id 306 then CleanUp
  979.   DoFX "back"
  980. end mouseUp
  981.  
  982. on mouseDown
  983. end mouseDown
  984.  
  985.  
  986. -- part 2 (button)
  987. -- low flags: 00
  988. -- high flags: 0000
  989. -- rect: left=256 top=318 right=341 bottom=281
  990. -- title width / last selected line: 0
  991. -- icon id / first selected line: 1013 / 1013
  992. -- text alignment: 1
  993. -- font id: 0
  994. -- text size: 12
  995. -- style flags: 0
  996. -- line height: 16
  997. -- part name: Next
  998. ----- HyperTalk script -----
  999. on mouseUp
  1000.   if true is in the name of field id 306 then CleanUp
  1001.   DoFX "next"
  1002. end mouseUp
  1003.  
  1004. on mouseDown
  1005. end mouseDown
  1006.  
  1007.  
  1008.  
  1009.  
  1010. -- part 98 (button)
  1011. -- low flags: 80
  1012. -- high flags: 4002
  1013. -- rect: left=0 top=315 right=342 bottom=512
  1014. -- title width / last selected line: 0
  1015. -- icon id / first selected line: 0 / 0
  1016. -- text alignment: 1
  1017. -- font id: 0
  1018. -- text size: 12
  1019. -- style flags: 0
  1020. -- line height: 16
  1021. -- part name: BackDrop
  1022. ----- HyperTalk script -----
  1023. on mouseUp
  1024. end mouseUp
  1025.  
  1026. on mouseDown
  1027. end mouseDown
  1028.  
  1029.  
  1030.  
  1031. -- part 3 (field)
  1032. -- low flags: 80
  1033. -- high flags: 0000
  1034. -- rect: left=16 top=12 right=45 bottom=487
  1035. -- title width / last selected line: 0
  1036. -- icon id / first selected line: 0 / 0
  1037. -- text alignment: 1
  1038. -- font id: 91
  1039. -- text size: 24
  1040. -- style flags: 0
  1041. -- line height: 32
  1042. -- part name: Title
  1043.  
  1044.  
  1045. -- part 4 (field)
  1046. -- low flags: 80
  1047. -- high flags: 0002
  1048. -- rect: left=50 top=50 right=250 bottom=450
  1049. -- title width / last selected line: 0
  1050. -- icon id / first selected line: 0 / 0
  1051. -- text alignment: 1
  1052. -- font id: 91
  1053. -- text size: 18
  1054. -- style flags: 0
  1055. -- line height: 24
  1056. -- part name: Column
  1057.  
  1058.  
  1059. -- part 5 (field)
  1060. -- low flags: 80
  1061. -- high flags: 0000
  1062. -- rect: left=24 top=17 right=307 bottom=482
  1063. -- title width / last selected line: 0
  1064. -- icon id / first selected line: 0 / 0
  1065. -- text alignment: 0
  1066. -- font id: 91
  1067. -- text size: 24
  1068. -- style flags: 0
  1069. -- line height: 32
  1070. -- part name: FullCard
  1071.  
  1072.  
  1073. -- part 8 (field)
  1074. -- low flags: 80
  1075. -- high flags: 0000
  1076. -- rect: left=16 top=48 right=305 bottom=487
  1077. -- title width / last selected line: 0
  1078. -- icon id / first selected line: 0 / 0
  1079. -- text alignment: 0
  1080. -- font id: 91
  1081. -- text size: 24
  1082. -- style flags: 0
  1083. -- line height: 32
  1084. -- part name: body
  1085.  
  1086.  
  1087. -- part 26 (button)
  1088. -- low flags: 00
  1089. -- high flags: 0000
  1090. -- rect: left=11 top=320 right=338 bottom=35
  1091. -- title width / last selected line: 0
  1092. -- icon id / first selected line: 0 / 0
  1093. -- text alignment: 1
  1094. -- font id: 0
  1095. -- text size: 12
  1096. -- style flags: 0
  1097. -- line height: 16
  1098. -- part name: Hide
  1099. ----- HyperTalk script -----
  1100. on mouseUp
  1101.   if the optionkey is up then
  1102.     if (the icon of me is 15566) or (the icon of me is 24272)
  1103.     then
  1104.     HideTools
  1105.   else
  1106.     SetUp
  1107.   end if
  1108. else
  1109.   if (the icon of me is 15566) or (the icon of me is 24272)
  1110.   then
  1111.   GiveHelp "Hide Tools┬á"
  1112. else
  1113.   GiveHelp "Show Tools┬á"
  1114. end if
  1115. end if
  1116. end mouseUp
  1117.  
  1118. on SetUp
  1119.   global ToolView
  1120.   if the icon of me is 0 or ToolView is empty
  1121.   then
  1122.   if ToolView is not "ButtonTools" and the visible of background button id 16 is true then HideButtonTools
  1123.   if ToolView is not "DrawTools" and the visible of background button id 84 is true then HideDrawTools
  1124.   if ToolView is in "ButtonTools DrawTools" and the visible of background button id 10 is true then HideFieldTools
  1125.   showtools
  1126. end if
  1127. end SetUp
  1128.  
  1129. on mouseDown
  1130. end mouseDown
  1131.  
  1132.  
  1133. -- part 81 (button)
  1134. -- low flags: 00
  1135. -- high flags: 0000
  1136. -- rect: left=499 top=21 right=49 bottom=512
  1137. -- title width / last selected line: 0
  1138. -- icon id / first selected line: 23594 / 23594
  1139. -- text alignment: 1
  1140. -- font id: 0
  1141. -- text size: 12
  1142. -- style flags: 0
  1143. -- line height: 16
  1144. -- part name: Edit
  1145. ----- HyperTalk script -----
  1146. on mouseUp
  1147.   global Restore
  1148.   if the optionKey is up then
  1149.     if Restore is empty then
  1150.       set the cursor to busy
  1151.       repeat with i = 1 to the number of buttons
  1152.         if the visible of button i is true
  1153.         then
  1154.         put (the number of button i) & "," after restore
  1155.         set the visible of button i to false
  1156.         set the cursor to busy
  1157.       end if
  1158.     end repeat
  1159.     repeat with i = 1 to the number of card fields
  1160.       set the lockText of card field i to false
  1161.       set the cursor to busy
  1162.     end repeat
  1163.     set the textArrows to true
  1164.   else
  1165.     set the cursor to busy
  1166.     repeat with i = 1 to the number of card fields
  1167.       set the lockText of card field i to true
  1168.       set the cursor to busy
  1169.     end repeat
  1170.     repeat with i = 1 to the number of items in restore
  1171.       put item i of restore into needed
  1172.       set the visible of button needed to true
  1173.       set the cursor to busy
  1174.     end repeat
  1175.     put empty into Restore
  1176.     set the textArrows to false
  1177.   end if
  1178.   set the cursor to browse
  1179. else GiveHelp "EditΓǪ"
  1180. end mouseUp
  1181.  
  1182. on mouseDown
  1183. end mouseDown
  1184.  
  1185.  
  1186.  
  1187. -- part 9 (button)
  1188. -- low flags: 80
  1189. -- high flags: 0000
  1190. -- rect: left=386 top=202 right=234 bottom=486
  1191. -- title width / last selected line: 0
  1192. -- icon id / first selected line: 0 / 0
  1193. -- text alignment: 1
  1194. -- font id: 0
  1195. -- text size: 12
  1196. -- style flags: 0
  1197. -- line height: 16
  1198. -- part name: Hiliter
  1199.  
  1200.  
  1201. -- part 79 (button)
  1202. -- low flags: 80
  1203. -- high flags: 0001
  1204. -- rect: left=387 top=234 right=266 bottom=485
  1205. -- title width / last selected line: 0
  1206. -- icon id / first selected line: 0 / 0
  1207. -- text alignment: 1
  1208. -- font id: 0
  1209. -- text size: 12
  1210. -- style flags: 0
  1211. -- line height: 16
  1212. -- part name: Mask
  1213.  
  1214.  
  1215. -- part 82 (button)
  1216. -- low flags: 80
  1217. -- high flags: 0000
  1218. -- rect: left=388 top=202 right=234 bottom=484
  1219. -- title width / last selected line: 0
  1220. -- icon id / first selected line: 0 / 0
  1221. -- text alignment: 1
  1222. -- font id: 0
  1223. -- text size: 12
  1224. -- style flags: 0
  1225. -- line height: 16
  1226. -- part name: Flasher
  1227.  
  1228.  
  1229. -- part 83 (button)
  1230. -- low flags: 80
  1231. -- high flags: 0001
  1232. -- rect: left=382 top=170 right=202 bottom=483
  1233. -- title width / last selected line: 0
  1234. -- icon id / first selected line: 0 / 0
  1235. -- text alignment: 1
  1236. -- font id: 0
  1237. -- text size: 12
  1238. -- style flags: 0
  1239. -- line height: 16
  1240. -- part name: Shutter
  1241.  
  1242.  
  1243. -- part 10 (button)
  1244. -- low flags: 80
  1245. -- high flags: 2002
  1246. -- rect: left=211 top=320 right=338 bottom=233
  1247. -- title width / last selected line: 0
  1248. -- icon id / first selected line: 949 / 949
  1249. -- text alignment: 1
  1250. -- font id: 0
  1251. -- text size: 12
  1252. -- style flags: 0
  1253. -- line height: 16
  1254. -- part name: MakeTitleField
  1255. ----- HyperTalk script -----
  1256. on mouseUp
  1257.   if the optionKey is up then MakeTitleField
  1258.   else GiveHelp "Title┬á"
  1259. end mouseUp
  1260.  
  1261. on mouseDown
  1262. end mouseDown
  1263.  
  1264.  
  1265. -- part 11 (button)
  1266. -- low flags: 80
  1267. -- high flags: 2002
  1268. -- rect: left=463 top=320 right=338 bottom=485
  1269. -- title width / last selected line: 0
  1270. -- icon id / first selected line: 9839 / 9839
  1271. -- text alignment: 1
  1272. -- font id: 0
  1273. -- text size: 12
  1274. -- style flags: 0
  1275. -- line height: 16
  1276. -- part name: Columns
  1277. ----- HyperTalk script -----
  1278. on mouseUp
  1279.   if the optionKey is up then domenu "ColumnsΓǪ"
  1280.   else GiveHelp "ColumnsΓǪ"
  1281. end mouseUp
  1282.  
  1283. on mouseDown
  1284. end mouseDown
  1285.  
  1286.  
  1287. -- part 12 (button)
  1288. -- low flags: 80
  1289. -- high flags: 2002
  1290. -- rect: left=255 top=320 right=338 bottom=277
  1291. -- title width / last selected line: 0
  1292. -- icon id / first selected line: 13275 / 13275
  1293. -- text alignment: 1
  1294. -- font id: 0
  1295. -- text size: 12
  1296. -- style flags: 0
  1297. -- line height: 16
  1298. -- part name: FullCard
  1299. ----- HyperTalk script -----
  1300. on mouseUp
  1301.   if the optionKey is up then createField 5 --FullSlide
  1302.   else GiveHelp "FullSlide┬á"
  1303. end mouseUp
  1304.  
  1305. on mouseDown
  1306. end mouseDown
  1307.  
  1308.  
  1309. -- part 14 (button)
  1310. -- low flags: 80
  1311. -- high flags: 2002
  1312. -- rect: left=233 top=320 right=338 bottom=255
  1313. -- title width / last selected line: 0
  1314. -- icon id / first selected line: 19230 / 19230
  1315. -- text alignment: 1
  1316. -- font id: 0
  1317. -- text size: 12
  1318. -- style flags: 0
  1319. -- line height: 16
  1320. -- part name: Body
  1321. ----- HyperTalk script -----
  1322. on mouseUp
  1323.   if the optionKey is up then createField 8 --Body
  1324.   else GiveHelp "Body┬á"
  1325. end mouseUp
  1326.  
  1327. on mouseDown
  1328. end mouseDown
  1329.  
  1330.  
  1331. -- part 16 (button)
  1332. -- low flags: 80
  1333. -- high flags: 2002
  1334. -- rect: left=228 top=320 right=338 bottom=252
  1335. -- title width / last selected line: 0
  1336. -- icon id / first selected line: 18005 / 18005
  1337. -- text alignment: 1
  1338. -- font id: 0
  1339. -- text size: 12
  1340. -- style flags: 0
  1341. -- line height: 16
  1342. -- part name: HiliterMaker
  1343. ----- HyperTalk script -----
  1344. on mouseUp
  1345.   if the optionKey is up then CreateButton 9 --hiliter
  1346.   else GiveHelp "Hiliter┬á"
  1347. end mouseUp
  1348.  
  1349. on mousedown
  1350. end mousedown
  1351.  
  1352.  
  1353. -- part 20 (button)
  1354. -- low flags: 80
  1355. -- high flags: 2002
  1356. -- rect: left=61 top=320 right=338 bottom=85
  1357. -- title width / last selected line: 0
  1358. -- icon id / first selected line: 14176 / 14176
  1359. -- text alignment: 1
  1360. -- font id: 0
  1361. -- text size: 12
  1362. -- style flags: 0
  1363. -- line height: 16
  1364. -- part name: NewStack
  1365. ----- HyperTalk script -----
  1366. on mouseUp
  1367.   if the optionKey is up then newLecture
  1368.   else GiveHelp "New LectureΓǪ"
  1369. end mouseUp
  1370.  
  1371. on mouseDown
  1372. end mouseDown
  1373.  
  1374.  
  1375.  
  1376. -- part 21 (button)
  1377. -- low flags: 80
  1378. -- high flags: 2002
  1379. -- rect: left=85 top=320 right=338 bottom=109
  1380. -- title width / last selected line: 0
  1381. -- icon id / first selected line: 30845 / 30845
  1382. -- text alignment: 1
  1383. -- font id: 0
  1384. -- text size: 12
  1385. -- style flags: 0
  1386. -- line height: 16
  1387. -- part name: NewCard
  1388. ----- HyperTalk script -----
  1389. on mouseUp
  1390.   if the optionKey is up then MakeCard
  1391.   else GiveHelp "Make Next Slide┬á"
  1392. end mouseUp
  1393.  
  1394. on mouseDown
  1395. end mouseDown
  1396.  
  1397.  
  1398. -- part 22 (button)
  1399. -- low flags: 80
  1400. -- high flags: 2000
  1401. -- rect: left=499 top=289 right=308 bottom=512
  1402. -- title width / last selected line: 0
  1403. -- icon id / first selected line: 10210 / 10210
  1404. -- text alignment: 1
  1405. -- font id: 0
  1406. -- text size: 12
  1407. -- style flags: 0
  1408. -- line height: 16
  1409. -- part name: FieldTool
  1410. ----- HyperTalk script -----
  1411. on mouseUp
  1412.   if the optionKey is up then choose field tool
  1413.   else GiveHelp "Field Tool┬á"
  1414. end mouseUp
  1415.  
  1416. on mouseDown
  1417. end mouseDown
  1418.  
  1419.  
  1420. -- part 23 (button)
  1421. -- low flags: 80
  1422. -- high flags: 2000
  1423. -- rect: left=499 top=268 right=286 bottom=512
  1424. -- title width / last selected line: 0
  1425. -- icon id / first selected line: 9340 / 9340
  1426. -- text alignment: 1
  1427. -- font id: 0
  1428. -- text size: 12
  1429. -- style flags: 0
  1430. -- line height: 16
  1431. -- part name: ButtonTool
  1432. ----- HyperTalk script -----
  1433. on mouseUp
  1434.   if the optionKey is up then choose button tool
  1435.   else GiveHelp "Button Tool┬á"
  1436. end mouseUp
  1437.  
  1438. on mouseDown
  1439. end mouseDown
  1440.  
  1441.  
  1442. -- part 25 (button)
  1443. -- low flags: 80
  1444. -- high flags: 2000
  1445. -- rect: left=498 top=238 right=256 bottom=512
  1446. -- title width / last selected line: 0
  1447. -- icon id / first selected line: 28380 / 28380
  1448. -- text alignment: 1
  1449. -- font id: 0
  1450. -- text size: 12
  1451. -- style flags: 0
  1452. -- line height: 16
  1453. -- part name: UnlockFields
  1454. ----- HyperTalk script -----
  1455. on mouseUp
  1456.   global FieldsLocked
  1457.   if FieldsLocked
  1458.   then
  1459.   if the optionKey is up then unlockFields
  1460.   else GiveHelp "Unlock All┬á"
  1461. else
  1462.   if the optionKey is up then lockFields
  1463.   else GiveHelp "Lock All┬á"
  1464. end if
  1465. end mouseUp
  1466.  
  1467. on mouseDown
  1468. end mouseDown
  1469.  
  1470.  
  1471. -- part 27 (button)
  1472. -- low flags: 80
  1473. -- high flags: 2002
  1474. -- rect: left=211 top=320 right=338 bottom=233
  1475. -- title width / last selected line: 0
  1476. -- icon id / first selected line: 24368 / 24368
  1477. -- text alignment: 1
  1478. -- font id: 0
  1479. -- text size: 12
  1480. -- style flags: 0
  1481. -- line height: 16
  1482. -- part name: DrawLine
  1483. ----- HyperTalk script -----
  1484. on mouseUp
  1485.   if the optionKey is up then MakeLine "Straight"
  1486.   else GiveHelp "Straight LineΓǪ"
  1487. end mouseUp
  1488.  
  1489. on mouseDown
  1490. end mouseDown
  1491.  
  1492.  
  1493. -- part 28 (field)
  1494. -- low flags: 80
  1495. -- high flags: 0000
  1496. -- rect: left=0 top=22 right=167 bottom=67
  1497. -- title width / last selected line: 0
  1498. -- icon id / first selected line: 0 / 0
  1499. -- text alignment: 0
  1500. -- font id: 3
  1501. -- text size: 12
  1502. -- style flags: 0
  1503. -- line height: 16
  1504. -- part name: linespecs
  1505.  
  1506.  
  1507. -- part 33 (field)
  1508. -- low flags: 80
  1509. -- high flags: 0000
  1510. -- rect: left=0 top=0 right=12 bottom=156
  1511. -- title width / last selected line: 0
  1512. -- icon id / first selected line: 0 / 0
  1513. -- text alignment: 0
  1514. -- font id: 3
  1515. -- text size: 12
  1516. -- style flags: 0
  1517. -- line height: 16
  1518. -- part name: FX
  1519.  
  1520.  
  1521. -- part 68 (button)
  1522. -- low flags: 80
  1523. -- high flags: 2002
  1524. -- rect: left=183 top=320 right=338 bottom=207
  1525. -- title width / last selected line: 0
  1526. -- icon id / first selected line: 15999 / 15999
  1527. -- text alignment: 1
  1528. -- font id: 0
  1529. -- text size: 12
  1530. -- style flags: 0
  1531. -- line height: 16
  1532. -- part name: FX
  1533. ----- HyperTalk script -----
  1534. on mouseUp
  1535.   if the optionKey is up then
  1536.     if the shiftKey is up then
  1537.       setEffects
  1538.     else
  1539.       put "scroll left slowly to card" & return & "scroll right slowly to card" into background field "FXHolder"
  1540.     end if
  1541.   else
  1542.     GiveHelp "Set EffectsΓǪ"
  1543.   end if
  1544. end mouseUp
  1545.  
  1546. on mouseDown
  1547. end mouseDown
  1548.  
  1549.  
  1550. -- part 69 (button)
  1551. -- low flags: 80
  1552. -- high flags: 2002
  1553. -- rect: left=277 top=320 right=338 bottom=299
  1554. -- title width / last selected line: 0
  1555. -- icon id / first selected line: 31043 / 31043
  1556. -- text alignment: 1
  1557. -- font id: 0
  1558. -- text size: 12
  1559. -- style flags: 0
  1560. -- line height: 16
  1561. -- part name: BigType
  1562. ----- HyperTalk script -----
  1563. on mouseUp
  1564.   if the optionKey is up then createField 76 --BigType
  1565.   else GiveHelp "BigType┬á"
  1566. end mouseUp
  1567.  
  1568. on mouseDown
  1569. end mouseDown
  1570.  
  1571.  
  1572. -- part 70 (button)
  1573. -- low flags: 80
  1574. -- high flags: 2002
  1575. -- rect: left=276 top=320 right=338 bottom=300
  1576. -- title width / last selected line: 0
  1577. -- icon id / first selected line: 13086 / 13086
  1578. -- text alignment: 1
  1579. -- font id: 0
  1580. -- text size: 12
  1581. -- style flags: 0
  1582. -- line height: 16
  1583. -- part name: FlasherMaker
  1584. ----- HyperTalk script -----
  1585. on mouseUp
  1586.   if the optionKey is up then CreateButton 82 --flasher
  1587.   else GiveHelp "Flasher┬á"
  1588. end mouseUp
  1589.  
  1590. on mouseDown
  1591. end mouseDown
  1592.  
  1593.  
  1594. -- part 72 (button)
  1595. -- low flags: 80
  1596. -- high flags: 2002
  1597. -- rect: left=344 top=320 right=338 bottom=368
  1598. -- title width / last selected line: 0
  1599. -- icon id / first selected line: 21496 / 21496
  1600. -- text alignment: 1
  1601. -- font id: 0
  1602. -- text size: 12
  1603. -- style flags: 0
  1604. -- line height: 16
  1605. -- part name: ShutterMaker
  1606. ----- HyperTalk script -----
  1607. on mouseUp
  1608.   if the optionKey is up then CreateButton 83 --shutter
  1609.   else GiveHelp "Shutter┬á"
  1610. end mouseUp
  1611.  
  1612. on mouseDown
  1613. end mouseDown
  1614.  
  1615.  
  1616. -- part 76 (field)
  1617. -- low flags: 80
  1618. -- high flags: 2002
  1619. -- rect: left=110 top=89 right=236 bottom=393
  1620. -- title width / last selected line: 0
  1621. -- icon id / first selected line: 0 / 0
  1622. -- text alignment: 1
  1623. -- font id: 512
  1624. -- text size: 48
  1625. -- style flags: 256
  1626. -- line height: 64
  1627. -- part name: BigType
  1628.  
  1629.  
  1630. -- part 80 (button)
  1631. -- low flags: 80
  1632. -- high flags: 2002
  1633. -- rect: left=368 top=320 right=338 bottom=392
  1634. -- title width / last selected line: 0
  1635. -- icon id / first selected line: 18941 / 18941
  1636. -- text alignment: 1
  1637. -- font id: 0
  1638. -- text size: 12
  1639. -- style flags: 0
  1640. -- line height: 16
  1641. -- part name: MaskMaker
  1642. ----- HyperTalk script -----
  1643. on mouseUp
  1644.   if the optionKey is up then CreateButton 79 --Mask
  1645.   else GiveHelp "Mask┬á"
  1646. end mouseUp
  1647.  
  1648. on mouseDown
  1649. end mouseDown
  1650.  
  1651.  
  1652. -- part 84 (button)
  1653. -- low flags: 80
  1654. -- high flags: 2002
  1655. -- rect: left=452 top=320 right=338 bottom=476
  1656. -- title width / last selected line: 0
  1657. -- icon id / first selected line: 19676 / 19676
  1658. -- text alignment: 1
  1659. -- font id: 0
  1660. -- text size: 12
  1661. -- style flags: 0
  1662. -- line height: 16
  1663. -- part name: Eraser
  1664. ----- HyperTalk script -----
  1665. on mouseUp
  1666.   if the ShiftKey is down then
  1667.     if the optionKey is up then EraseCard
  1668.     else GiveHelp "Erase All Graphics┬á"
  1669.   else
  1670.     if the optionkey is up then
  1671.       choose eraser tool
  1672.       doMenu "revert"
  1673.       choose browse tool
  1674.     else
  1675.       GiveHelp "Erase Recent┬á"
  1676.     end if
  1677.   end if
  1678. end mouseUp
  1679.  
  1680. on mouseDown
  1681. end mouseDown
  1682.  
  1683.  
  1684. -- part 86 (button)
  1685. -- low flags: 80
  1686. -- high flags: 2000
  1687. -- rect: left=498 top=172 right=191 bottom=512
  1688. -- title width / last selected line: 0
  1689. -- icon id / first selected line: 31872 / 31872
  1690. -- text alignment: 1
  1691. -- font id: 0
  1692. -- text size: 12
  1693. -- style flags: 0
  1694. -- line height: 16
  1695. -- part name: LeftAlign
  1696. ----- HyperTalk script -----
  1697. on mouseUp
  1698.   global Mode
  1699.   if the optionKey is up then
  1700.     put "left" into Mode
  1701.     lockFields
  1702.   else GiveHelp "LeftAlignΓǪ"
  1703. end mouseUp
  1704.  
  1705. on mouseDown
  1706. end mouseDown
  1707.  
  1708.  
  1709. -- part 87 (button)
  1710. -- low flags: 80
  1711. -- high flags: 2000
  1712. -- rect: left=499 top=194 right=212 bottom=512
  1713. -- title width / last selected line: 0
  1714. -- icon id / first selected line: 31257 / 31257
  1715. -- text alignment: 1
  1716. -- font id: 0
  1717. -- text size: 12
  1718. -- style flags: 0
  1719. -- line height: 16
  1720. -- part name: CenterAlign
  1721. ----- HyperTalk script -----
  1722. on mouseUp
  1723.   global Mode
  1724.   if the optionKey is up then
  1725.     put "center" into Mode
  1726.     lockFields
  1727.   else GiveHelp "CenterΓǪ"
  1728. end mouseUp
  1729.  
  1730. on mouseDown
  1731. end mouseDown
  1732.  
  1733.  
  1734. -- part 88 (button)
  1735. -- low flags: 80
  1736. -- high flags: 2000
  1737. -- rect: left=498 top=215 right=233 bottom=512
  1738. -- title width / last selected line: 0
  1739. -- icon id / first selected line: 32309 / 32309
  1740. -- text alignment: 1
  1741. -- font id: 0
  1742. -- text size: 12
  1743. -- style flags: 0
  1744. -- line height: 16
  1745. -- part name: RightAlign
  1746. ----- HyperTalk script -----
  1747. on mouseUp
  1748.   global Mode
  1749.   if the optionKey is up then
  1750.     put "right" into Mode
  1751.     lockFields
  1752.   else GiveHelp "RightAlignΓǪ"
  1753. end mouseUp
  1754.  
  1755. on mouseDown
  1756. end mouseDown
  1757.  
  1758.  
  1759. -- part 92 (button)
  1760. -- low flags: 80
  1761. -- high flags: 2002
  1762. -- rect: left=135 top=320 right=338 bottom=159
  1763. -- title width / last selected line: 0
  1764. -- icon id / first selected line: 3233 / 3233
  1765. -- text alignment: 1
  1766. -- font id: 0
  1767. -- text size: 12
  1768. -- style flags: 0
  1769. -- line height: 16
  1770. -- part name: ShowButtonTools
  1771. ----- HyperTalk script -----
  1772. --show buttons for making buttons
  1773.  
  1774. on mouseUp
  1775.   global ToolView
  1776.   if the optionKey is up then
  1777.     if Toolview is "FieldTools"
  1778.     then
  1779.     HideFieldTools
  1780.   end if
  1781.   if ToolView is "DrawTools"
  1782.   then
  1783.   HideDrawTools
  1784. end if
  1785. if ToolView is not "ButtonTools"
  1786. then
  1787. ShowButtonTools
  1788. put "ButtonTools" into ToolView
  1789. end if
  1790. else
  1791.   GiveHelp "The Butn Menu┬á"
  1792. end if
  1793. end mouseUp
  1794.  
  1795. on mouseDown
  1796. end mouseDown
  1797.  
  1798.  
  1799.  
  1800. -- part 93 (button)
  1801. -- low flags: 80
  1802. -- high flags: 2002
  1803. -- rect: left=111 top=320 right=338 bottom=135
  1804. -- title width / last selected line: 0
  1805. -- icon id / first selected line: 26204 / 26204
  1806. -- text alignment: 1
  1807. -- font id: 0
  1808. -- text size: 12
  1809. -- style flags: 0
  1810. -- line height: 16
  1811. -- part name: ShowFieldTools
  1812. ----- HyperTalk script -----
  1813. --show buttons for making fields
  1814.  
  1815. on mouseUp
  1816.   global ToolView
  1817.   if the optionKey is up then
  1818.     if Toolview is "ButtonTools"
  1819.     then
  1820.     HideButtonTools
  1821.   end if
  1822.   if ToolView is "DrawTools"
  1823.   then
  1824.   HideDrawTools
  1825. end if
  1826. if ToolView is not "FieldTools"
  1827. then
  1828. ShowFieldTools
  1829. put "FieldTools" into ToolView
  1830. end if
  1831. else
  1832.   GiveHelp "The Field Menu┬á"
  1833. end if
  1834. end mouseUp
  1835.  
  1836. on mouseDown
  1837. end mouseDown
  1838.  
  1839.  
  1840.  
  1841. -- part 94 (button)
  1842. -- low flags: 80
  1843. -- high flags: 2002
  1844. -- rect: left=159 top=320 right=338 bottom=183
  1845. -- title width / last selected line: 0
  1846. -- icon id / first selected line: 7444 / 7444
  1847. -- text alignment: 1
  1848. -- font id: 0
  1849. -- text size: 12
  1850. -- style flags: 0
  1851. -- line height: 16
  1852. -- part name: ShowDrawTools
  1853. ----- HyperTalk script -----
  1854. --show buttons for drawing and recording the drawing
  1855.  
  1856. on mouseUp
  1857.   global ToolView
  1858.   if the optionKey is up then
  1859.     if Toolview is "FieldTools"
  1860.     then
  1861.     HideFieldTools
  1862.   end if
  1863.   if ToolView is "ButtonTools"
  1864.   then
  1865.   HideButtonTools
  1866. end if
  1867. if ToolView is not "DrawTools"
  1868. then
  1869. ShowDrawTools
  1870. put "DrawTools" into ToolView
  1871. end if
  1872. else
  1873.   GiveHelp "The Draw Menu┬á"
  1874. end if
  1875. end mouseUp
  1876.  
  1877. on mouseDown
  1878. end mouseDown
  1879.  
  1880.  
  1881.  
  1882. -- part 99 (button)
  1883. -- low flags: 80
  1884. -- high flags: 0002
  1885. -- rect: left=208 top=320 right=338 bottom=228
  1886. -- title width / last selected line: 0
  1887. -- icon id / first selected line: 15335 / 15335
  1888. -- text alignment: 1
  1889. -- font id: 0
  1890. -- text size: 12
  1891. -- style flags: 0
  1892. -- line height: 16
  1893. -- part name: ChainTool
  1894. ----- HyperTalk script -----
  1895. on mouseUp
  1896.   global Mode
  1897.   if Mode is empty then
  1898.     if the optionKey is up then beginChain "noMessage"
  1899.     else GiveHelp "Begin ChainΓǪ"
  1900.   else
  1901.     if the optionKey is up then endChain
  1902.     else GiveHelp "End Chain┬á"
  1903.   end if
  1904. end mouseUp
  1905.  
  1906. on mouseDown
  1907. end mouseDown
  1908.  
  1909.  
  1910.  
  1911. -- part 100 (field)
  1912. -- low flags: 80
  1913. -- high flags: 0007
  1914. -- rect: left=69 top=33 right=257 bottom=261
  1915. -- title width / last selected line: 0
  1916. -- icon id / first selected line: 0 / 0
  1917. -- text alignment: 0
  1918. -- font id: 3
  1919. -- text size: 9
  1920. -- style flags: 0
  1921. -- line height: 12
  1922. -- part name: Chains
  1923.  
  1924.  
  1925. -- part 102 (button)
  1926. -- low flags: 80
  1927. -- high flags: 2002
  1928. -- rect: left=277 top=320 right=338 bottom=299
  1929. -- title width / last selected line: 0
  1930. -- icon id / first selected line: 22259 / 22259
  1931. -- text alignment: 1
  1932. -- font id: 0
  1933. -- text size: 12
  1934. -- style flags: 0
  1935. -- line height: 16
  1936. -- part name: DrawArrow
  1937. ----- HyperTalk script -----
  1938. on mouseUp
  1939.   if the optionKey is up then MakeArrow "Straight"
  1940.   else GiveHelp "Straight ArrowΓǪ"
  1941. end mouseUp
  1942.  
  1943. on mouseDown
  1944. end mouseDown
  1945.  
  1946.  
  1947. -- part 103 (button)
  1948. -- low flags: 80
  1949. -- high flags: 2002
  1950. -- rect: left=455 top=320 right=338 bottom=474
  1951. -- title width / last selected line: 0
  1952. -- icon id / first selected line: 1950 / 1950
  1953. -- text alignment: 1
  1954. -- font id: 0
  1955. -- text size: 12
  1956. -- style flags: 0
  1957. -- line height: 16
  1958. -- part name: CheckBox Dingbat
  1959. ----- HyperTalk script -----
  1960. on mouseUp
  1961.   if the optionKey is up then CreateButton 110 --Checkbox DingBat
  1962.   else GiveHelp "CheckBox┬á"
  1963. end mouseUp
  1964.  
  1965. on mouseDown
  1966. end mouseDown
  1967.  
  1968.  
  1969. -- part 108 (button)
  1970. -- low flags: 80
  1971. -- high flags: 2002
  1972. -- rect: left=474 top=320 right=338 bottom=493
  1973. -- title width / last selected line: 0
  1974. -- icon id / first selected line: 12433 / 12433
  1975. -- text alignment: 1
  1976. -- font id: 0
  1977. -- text size: 12
  1978. -- style flags: 0
  1979. -- line height: 16
  1980. -- part name: Arrow Dingbat
  1981. ----- HyperTalk script -----
  1982. on mouseUp
  1983.   if the optionKey is up then CreateButton 115 --Arrow DingBat
  1984.   else GiveHelp "Arrow┬á"
  1985. end mouseUp
  1986.  
  1987. on mouseDown
  1988. end mouseDown
  1989.  
  1990.  
  1991. -- part 109 (button)
  1992. -- low flags: 80
  1993. -- high flags: 2002
  1994. -- rect: left=493 top=320 right=338 bottom=512
  1995. -- title width / last selected line: 0
  1996. -- icon id / first selected line: 1586 / 1586
  1997. -- text alignment: 1
  1998. -- font id: 0
  1999. -- text size: 12
  2000. -- style flags: 0
  2001. -- line height: 16
  2002. -- part name: Hand Dingbat
  2003. ----- HyperTalk script -----
  2004. on mouseUp
  2005.   if the optionKey is up then CreateButton 116 --Hand DingBat
  2006.   else GiveHelp "Hand┬á"
  2007. end mouseUp
  2008.  
  2009. on mouseDown
  2010. end mouseDown
  2011.  
  2012.  
  2013. -- part 110 (button)
  2014. -- low flags: 80
  2015. -- high flags: 0000
  2016. -- rect: left=16 top=170 right=202 bottom=49
  2017. -- title width / last selected line: 0
  2018. -- icon id / first selected line: 10454 / 10454
  2019. -- text alignment: 1
  2020. -- font id: 0
  2021. -- text size: 12
  2022. -- style flags: 0
  2023. -- line height: 16
  2024. -- part name: CheckBox Dingbat
  2025.  
  2026.  
  2027. -- part 115 (button)
  2028. -- low flags: 80
  2029. -- high flags: 0000
  2030. -- rect: left=16 top=170 right=202 bottom=49
  2031. -- title width / last selected line: 0
  2032. -- icon id / first selected line: 2415 / 2415
  2033. -- text alignment: 1
  2034. -- font id: 0
  2035. -- text size: 12
  2036. -- style flags: 0
  2037. -- line height: 16
  2038. -- part name: Arrow Dingbat
  2039.  
  2040.  
  2041. -- part 116 (button)
  2042. -- low flags: 80
  2043. -- high flags: 0000
  2044. -- rect: left=16 top=170 right=202 bottom=49
  2045. -- title width / last selected line: 0
  2046. -- icon id / first selected line: 32381 / 32381
  2047. -- text alignment: 1
  2048. -- font id: 0
  2049. -- text size: 12
  2050. -- style flags: 0
  2051. -- line height: 16
  2052. -- part name: Hand
  2053.  
  2054.  
  2055. -- part 117 (button)
  2056. -- low flags: 80
  2057. -- high flags: 0002
  2058. -- rect: left=0 top=28 right=43 bottom=13
  2059. -- title width / last selected line: 0
  2060. -- icon id / first selected line: 28210 / 28210
  2061. -- text alignment: 1
  2062. -- font id: 0
  2063. -- text size: 12
  2064. -- style flags: 0
  2065. -- line height: 16
  2066. -- part name: DelayButtons
  2067. ----- HyperTalk script -----
  2068. --Make Delay button
  2069.  
  2070. on mouseUp
  2071.   CreateButton 209
  2072.   choose browse tool
  2073. end mouseUp
  2074.  
  2075. on mouseDown
  2076. end mouseDown
  2077.  
  2078.  
  2079. -- part 119 (button)
  2080. -- low flags: 80
  2081. -- high flags: 0002
  2082. -- rect: left=0 top=63 right=78 bottom=13
  2083. -- title width / last selected line: 0
  2084. -- icon id / first selected line: 426 / 426
  2085. -- text alignment: 1
  2086. -- font id: 0
  2087. -- text size: 12
  2088. -- style flags: 0
  2089. -- line height: 16
  2090. -- part name: BeepButtons
  2091. ----- HyperTalk script -----
  2092. --Make Beep button
  2093.  
  2094. on mouseUp
  2095.   CreateButton 210
  2096.   choose browse tool
  2097. end mouseUp
  2098.  
  2099. on mouseDown
  2100. end mouseDown
  2101.  
  2102.  
  2103. -- part 121 (button)
  2104. -- low flags: 80
  2105. -- high flags: 2002
  2106. -- rect: left=299 top=320 right=338 bottom=319
  2107. -- title width / last selected line: 0
  2108. -- icon id / first selected line: 6723 / 6723
  2109. -- text alignment: 1
  2110. -- font id: 0
  2111. -- text size: 12
  2112. -- style flags: 0
  2113. -- line height: 16
  2114. -- part name: MakePoPUp
  2115. ----- HyperTalk script -----
  2116. on mouseUp
  2117.   if the optionKey is up then MakePopUp
  2118.   else GiveHelp "PopUp┬á"
  2119. end mouseUp
  2120.  
  2121. on mouseDown
  2122. end mouseDown
  2123.  
  2124.  
  2125. -- part 122 (field)
  2126. -- low flags: 80
  2127. -- high flags: 2004
  2128. -- rect: left=336 top=107 right=224 bottom=481
  2129. -- title width / last selected line: 0
  2130. -- icon id / first selected line: 0 / 0
  2131. -- text alignment: 0
  2132. -- font id: 91
  2133. -- text size: 24
  2134. -- style flags: 0
  2135. -- line height: 32
  2136. -- part name: PopUp
  2137.  
  2138.  
  2139. -- part 124 (button)
  2140. -- low flags: 80
  2141. -- high flags: 0000
  2142. -- rect: left=0 top=236 right=273 bottom=13
  2143. -- title width / last selected line: 0
  2144. -- icon id / first selected line: 0 / 0
  2145. -- text alignment: 1
  2146. -- font id: 0
  2147. -- text size: 12
  2148. -- style flags: 0
  2149. -- line height: 16
  2150. -- part name: Draw╩
  2151. ----- HyperTalk script -----
  2152. on mouseUp
  2153.   if the optionKey is down then
  2154.     put the short name of me into command
  2155.     delete char 1 to 5 of command
  2156.     GiveHelp command
  2157.   else pass mouseUp
  2158. end mouseUp
  2159.  
  2160. on mousedown
  2161.   if the optionKey is up then pass mouseDown
  2162. end mouseDown
  2163.  
  2164.  
  2165. -- part 125 (field)
  2166. -- low flags: 80
  2167. -- high flags: 0007
  2168. -- rect: left=0 top=169 right=258 bottom=49
  2169. -- title width / last selected line: 0
  2170. -- icon id / first selected line: 0 / 0
  2171. -- text alignment: 0
  2172. -- font id: 3
  2173. -- text size: 12
  2174. -- style flags: 0
  2175. -- line height: 16
  2176. -- part name: PopUps
  2177.  
  2178.  
  2179. -- part 126 (button)
  2180. -- low flags: 80
  2181. -- high flags: 0002
  2182. -- rect: left=35 top=320 right=338 bottom=57
  2183. -- title width / last selected line: 0
  2184. -- icon id / first selected line: 633 / 633
  2185. -- text alignment: 1
  2186. -- font id: 0
  2187. -- text size: 12
  2188. -- style flags: 0
  2189. -- line height: 16
  2190. -- part name: CleanUp
  2191. ----- HyperTalk script -----
  2192. --button for setting card to initial working state
  2193.  
  2194. on mouseUp
  2195.   if the optionKey is up then
  2196.     if the shiftKey is down then
  2197.       ResetAll
  2198.     else
  2199.       Reset
  2200.     end if
  2201.   else
  2202.     if the shiftKey is down then
  2203.       GiveHelp "Reset All Slides┬á"
  2204.     else
  2205.       GiveHelp "Reset Slide┬á"
  2206.     end if
  2207.   end if
  2208. end mouseUp
  2209.  
  2210. on mouseDown
  2211. end mouseDown
  2212.  
  2213.  
  2214. -- part 129 (button)
  2215. -- low flags: 80
  2216. -- high flags: 2002
  2217. -- rect: left=252 top=320 right=338 bottom=276
  2218. -- title width / last selected line: 0
  2219. -- icon id / first selected line: 25650 / 25650
  2220. -- text alignment: 1
  2221. -- font id: 0
  2222. -- text size: 12
  2223. -- style flags: 0
  2224. -- line height: 16
  2225. -- part name: HiliterTiler
  2226. ----- HyperTalk script -----
  2227. on mouseUp
  2228.   global Mode
  2229.   if the optionKey is up then
  2230.     put "tile" into Mode
  2231.     lockFields
  2232.   else GiveHelp "Tile HiliterΓǪ"
  2233. end mouseUp
  2234.  
  2235. on mouseDown
  2236. end mouseDown
  2237.  
  2238.  
  2239. -- part 130 (field)
  2240. -- low flags: 80
  2241. -- high flags: 0007
  2242. -- rect: left=255 top=170 right=255 bottom=455
  2243. -- title width / last selected line: 0
  2244. -- icon id / first selected line: 0 / 0
  2245. -- text alignment: 0
  2246. -- font id: 3
  2247. -- text size: 12
  2248. -- style flags: 0
  2249. -- line height: 16
  2250. -- part name: ButtonRects
  2251.  
  2252.  
  2253. -- part 132 (button)
  2254. -- low flags: 80
  2255. -- high flags: 0001
  2256. -- rect: left=216 top=181 right=263 bottom=440
  2257. -- title width / last selected line: 0
  2258. -- icon id / first selected line: 0 / 0
  2259. -- text alignment: 1
  2260. -- font id: 0
  2261. -- text size: 12
  2262. -- style flags: 0
  2263. -- line height: 16
  2264. -- part name: Shrinker
  2265. ----- HyperTalk script -----
  2266. on restore
  2267.   put the id of me into holder
  2268.   set the rect of me to line holder of background field "ButtonRects"
  2269.   put 1 into item 1 of line holder of field Chains
  2270. end restore
  2271.  
  2272.  
  2273.  
  2274. -- part 133 (button)
  2275. -- low flags: 80
  2276. -- high flags: 2002
  2277. -- rect: left=392 top=320 right=338 bottom=416
  2278. -- title width / last selected line: 0
  2279. -- icon id / first selected line: 160 / 160
  2280. -- text alignment: 1
  2281. -- font id: 0
  2282. -- text size: 12
  2283. -- style flags: 0
  2284. -- line height: 16
  2285. -- part name: ShrinkerMaker
  2286. ----- HyperTalk script -----
  2287. on mouseUp
  2288.   global Mode
  2289.   if the optionKey is up then
  2290.     put "shrinkwrap" into Mode
  2291.     lockFields
  2292.   else GiveHelp "ShrinkerΓǪ"
  2293. end mouseUp
  2294.  
  2295. on mouseDown
  2296. end mouseDown
  2297.  
  2298.  
  2299. -- part 134 (button)
  2300. -- low flags: 80
  2301. -- high flags: 2000
  2302. -- rect: left=498 top=151 right=169 bottom=512
  2303. -- title width / last selected line: 0
  2304. -- icon id / first selected line: 1347 / 1347
  2305. -- text alignment: 1
  2306. -- font id: 0
  2307. -- text size: 12
  2308. -- style flags: 0
  2309. -- line height: 16
  2310. -- part name: Squeezer
  2311. ----- HyperTalk script -----
  2312. on mouseUp
  2313.   if the optionKey is up then setSqueeze
  2314.   else GiveHelp "Squeeze Lines┬á"
  2315. end mouseUp
  2316.  
  2317. on mouseDown
  2318. end mouseDown
  2319.  
  2320.  
  2321. -- part 135 (field)
  2322. -- low flags: 80
  2323. -- high flags: 0007
  2324. -- rect: left=39 top=55 right=258 bottom=477
  2325. -- title width / last selected line: 0
  2326. -- icon id / first selected line: 0 / 0
  2327. -- text alignment: 1
  2328. -- font id: 512
  2329. -- text size: 48
  2330. -- style flags: 0
  2331. -- line height: 64
  2332. -- part name: AutoScroller 2
  2333. ----- HyperTalk script -----
  2334. on autoScroll
  2335.   put word 2 of the short name of me into scrollrate
  2336.   set the scroll of me to 0
  2337.   put the number of lines of me into myLength
  2338.   put the rect of me into myrect
  2339.   put the textheight of me into lineHeight
  2340.   put 0 into myscroll
  2341.   put (item 4 of myrect) - (item 2 of myrect) into mybottom
  2342.   put 2 + (myLength*lineHeight) - myBottom into myBottom
  2343.   repeat while myscroll < myBottom
  2344.     add scrollrate to myscroll
  2345.     set the scroll of me to myscroll
  2346.   end repeat
  2347. end autoScroll
  2348.  
  2349.  
  2350. -- part 137 (field)
  2351. -- low flags: 80
  2352. -- high flags: 2002
  2353. -- rect: left=178 top=49 right=98 bottom=304
  2354. -- title width / last selected line: 0
  2355. -- icon id / first selected line: 0 / 0
  2356. -- text alignment: 1
  2357. -- font id: 91
  2358. -- text size: 18
  2359. -- style flags: 0
  2360. -- line height: 24
  2361. -- part name: Rectangle
  2362.  
  2363.  
  2364. -- part 139 (button)
  2365. -- low flags: 80
  2366. -- high flags: 0000
  2367. -- rect: left=382 top=202 right=234 bottom=483
  2368. -- title width / last selected line: 0
  2369. -- icon id / first selected line: 0 / 0
  2370. -- text alignment: 1
  2371. -- font id: 0
  2372. -- text size: 12
  2373. -- style flags: 0
  2374. -- line height: 16
  2375. -- part name: GreyOut
  2376. ----- HyperTalk script -----
  2377.  
  2378.  
  2379.  
  2380.  
  2381. -- part 140 (button)
  2382. -- low flags: 80
  2383. -- high flags: 8000
  2384. -- rect: left=422 top=284 right=306 bottom=486
  2385. -- title width / last selected line: 0
  2386. -- icon id / first selected line: 0 / 0
  2387. -- text alignment: 1
  2388. -- font id: 0
  2389. -- text size: 12
  2390. -- style flags: 0
  2391. -- line height: 16
  2392. -- part name: Step (1)
  2393. ----- HyperTalk script -----
  2394. on restore
  2395.   put the id of me into holder
  2396.   put 1 into item 1 of line holder of field Heirarchy
  2397.   if item 2 of line holder of field Heirarchy is empty
  2398.   then
  2399.   set the name of button ID holder to "Step (1)"
  2400. else
  2401.   set the name of button ID holder to "Step 1"
  2402. end if
  2403. end restore
  2404.  
  2405.  
  2406.  
  2407. -- part 141 (field)
  2408. -- low flags: 80
  2409. -- high flags: 2007
  2410. -- rect: left=16 top=48 right=305 bottom=487
  2411. -- title width / last selected line: 0
  2412. -- icon id / first selected line: 0 / 0
  2413. -- text alignment: 0
  2414. -- font id: 91
  2415. -- text size: 24
  2416. -- style flags: 0
  2417. -- line height: 32
  2418. -- part name: Scrolling
  2419.  
  2420.  
  2421. -- part 142 (field)
  2422. -- low flags: 80
  2423. -- high flags: 0000
  2424. -- rect: left=156 top=120 right=205 bottom=356
  2425. -- title width / last selected line: 0
  2426. -- icon id / first selected line: 0 / 0
  2427. -- text alignment: 0
  2428. -- font id: 3
  2429. -- text size: 12
  2430. -- style flags: 0
  2431. -- line height: 16
  2432. -- part name: ObjectNames
  2433.  
  2434.  
  2435. -- part 143 (field)
  2436. -- low flags: 80
  2437. -- high flags: 6002
  2438. -- rect: left=91 top=44 right=303 bottom=148
  2439. -- title width / last selected line: 0
  2440. -- icon id / first selected line: 0 / 0
  2441. -- text alignment: 65535
  2442. -- font id: 3
  2443. -- text size: 12
  2444. -- style flags: 0
  2445. -- line height: 16
  2446. -- part name: YValues
  2447. ----- HyperTalk script -----
  2448. on mouseUp
  2449. end mouseUp
  2450.  
  2451. on mouseDown
  2452. end mouseDown
  2453.  
  2454.  
  2455. -- part 144 (field)
  2456. -- low flags: 80
  2457. -- high flags: 6002
  2458. -- rect: left=26 top=44 right=303 bottom=83
  2459. -- title width / last selected line: 0
  2460. -- icon id / first selected line: 0 / 0
  2461. -- text alignment: 65535
  2462. -- font id: 3
  2463. -- text size: 12
  2464. -- style flags: 0
  2465. -- line height: 16
  2466. -- part name: XValues
  2467. ----- HyperTalk script -----
  2468. on mouseUp
  2469. end mouseUp
  2470.  
  2471. on mouseDown
  2472. end mouseDown
  2473.  
  2474.  
  2475. -- part 147 (field)
  2476. -- low flags: 81
  2477. -- high flags: 2004
  2478. -- rect: left=157 top=25 right=306 bottom=476
  2479. -- title width / last selected line: 0
  2480. -- icon id / first selected line: 0 / 0
  2481. -- text alignment: 1
  2482. -- font id: 3
  2483. -- text size: 12
  2484. -- style flags: 256
  2485. -- line height: 16
  2486. -- part name: GraphEntry
  2487. ----- HyperTalk script -----
  2488. on mouseUp
  2489. end mouseUp
  2490.  
  2491. on mouseDown
  2492. end mouseDown
  2493.  
  2494.  
  2495. -- part 149 (button)
  2496. -- low flags: 80
  2497. -- high flags: A003
  2498. -- rect: left=212 top=275 right=297 bottom=312
  2499. -- title width / last selected line: 0
  2500. -- icon id / first selected line: 0 / 0
  2501. -- text alignment: 1
  2502. -- font id: 0
  2503. -- text size: 12
  2504. -- style flags: 0
  2505. -- line height: 16
  2506. -- part name: No╩Change
  2507. ----- HyperTalk script -----
  2508. on mouseUp
  2509.   global XCoords, YCoords
  2510.   put XCoords into field "XValues"
  2511.   put YCoords into field "YValues"
  2512.   select after line 1 of field "XValues"
  2513. end mouseUp
  2514.  
  2515. On mouseDown
  2516. end mouseDown
  2517.  
  2518.  
  2519.  
  2520. -- part 150 (button)
  2521. -- low flags: 80
  2522. -- high flags: A003
  2523. -- rect: left=322 top=275 right=297 bottom=422
  2524. -- title width / last selected line: 0
  2525. -- icon id / first selected line: 0 / 0
  2526. -- text alignment: 1
  2527. -- font id: 0
  2528. -- text size: 12
  2529. -- style flags: 0
  2530. -- line height: 16
  2531. -- part name: Delete╩Graph
  2532. ----- HyperTalk script -----
  2533. on mouseUp
  2534.   global Mode
  2535.   put "NoGraph" into Mode
  2536.   send DefineArea to field "Scripts"
  2537. end mouseUp
  2538.  
  2539. on mouseDown
  2540. end mouseDown
  2541.  
  2542.  
  2543. -- part 154 (button)
  2544. -- low flags: 80
  2545. -- high flags: A003
  2546. -- rect: left=211 top=238 right=272 bottom=422
  2547. -- title width / last selected line: 0
  2548. -- icon id / first selected line: 0 / 0
  2549. -- text alignment: 1
  2550. -- font id: 0
  2551. -- text size: 12
  2552. -- style flags: 0
  2553. -- line height: 16
  2554. -- part name: Values╩Okay
  2555. ----- HyperTalk script -----
  2556. on mouseUp
  2557.   send DefineArea to field Scripts
  2558. end mouseUp
  2559.  
  2560. On mouseDown
  2561. end mouseDown
  2562.  
  2563.  
  2564.  
  2565. -- part 155 (field)
  2566. -- low flags: 81
  2567. -- high flags: 2002
  2568. -- rect: left=100 top=59 right=259 bottom=400
  2569. -- title width / last selected line: 0
  2570. -- icon id / first selected line: 0 / 0
  2571. -- text alignment: 0
  2572. -- font id: 3
  2573. -- text size: 12
  2574. -- style flags: 256
  2575. -- line height: 16
  2576. -- part name: GraphArea
  2577. ----- HyperTalk script -----
  2578. on mouseUp
  2579. end mouseUp
  2580.  
  2581. on mouseDown
  2582. end mouseDown
  2583.  
  2584.  
  2585. -- part 156 (button)
  2586. -- low flags: 80
  2587. -- high flags: A003
  2588. -- rect: left=386 top=284 right=306 bottom=486
  2589. -- title width / last selected line: 0
  2590. -- icon id / first selected line: 0 / 0
  2591. -- text alignment: 1
  2592. -- font id: 0
  2593. -- text size: 12
  2594. -- style flags: 0
  2595. -- line height: 16
  2596. -- part name: Area╩OK
  2597. ----- HyperTalk script -----
  2598. on mouseUp
  2599.   send GetGraphLabels to field "Scripts"
  2600. end mouseUp
  2601.  
  2602. on mouseDown
  2603. end mouseDown
  2604.  
  2605.  
  2606. -- part 166 (field)
  2607. -- low flags: 80
  2608. -- high flags: 2002
  2609. -- rect: left=138 top=118 right=144 bottom=252
  2610. -- title width / last selected line: 0
  2611. -- icon id / first selected line: 0 / 0
  2612. -- text alignment: 1
  2613. -- font id: 3
  2614. -- text size: 12
  2615. -- style flags: 256
  2616. -- line height: 16
  2617. -- part name: XMax
  2618. ----- HyperTalk script -----
  2619. on mouseup
  2620. end mouseUp
  2621.  
  2622. on mousedown
  2623. end mousedown
  2624.  
  2625.  
  2626. -- part 168 (field)
  2627. -- low flags: 80
  2628. -- high flags: 2002
  2629. -- rect: left=138 top=220 right=246 bottom=252
  2630. -- title width / last selected line: 0
  2631. -- icon id / first selected line: 0 / 0
  2632. -- text alignment: 1
  2633. -- font id: 3
  2634. -- text size: 12
  2635. -- style flags: 256
  2636. -- line height: 16
  2637. -- part name: XInt
  2638. ----- HyperTalk script -----
  2639. on mouseup
  2640. end mouseUp
  2641.  
  2642. on mousedown
  2643. end mousedown
  2644.  
  2645.  
  2646. -- part 170 (field)
  2647. -- low flags: 80
  2648. -- high flags: 2002
  2649. -- rect: left=138 top=169 right=195 bottom=252
  2650. -- title width / last selected line: 0
  2651. -- icon id / first selected line: 0 / 0
  2652. -- text alignment: 1
  2653. -- font id: 3
  2654. -- text size: 12
  2655. -- style flags: 256
  2656. -- line height: 16
  2657. -- part name: XMin
  2658. ----- HyperTalk script -----
  2659. on mouseup
  2660. end mouseUp
  2661.  
  2662. on mousedown
  2663. end mousedown
  2664.  
  2665.  
  2666. -- part 173 (field)
  2667. -- low flags: 80
  2668. -- high flags: 2002
  2669. -- rect: left=251 top=118 right=144 bottom=365
  2670. -- title width / last selected line: 0
  2671. -- icon id / first selected line: 0 / 0
  2672. -- text alignment: 1
  2673. -- font id: 3
  2674. -- text size: 12
  2675. -- style flags: 256
  2676. -- line height: 16
  2677. -- part name: YMax
  2678. ----- HyperTalk script -----
  2679. on mouseup
  2680. end mouseUp
  2681.  
  2682. on mousedown
  2683. end mousedown
  2684.  
  2685.  
  2686. -- part 175 (field)
  2687. -- low flags: 80
  2688. -- high flags: 2002
  2689. -- rect: left=251 top=220 right=246 bottom=365
  2690. -- title width / last selected line: 0
  2691. -- icon id / first selected line: 0 / 0
  2692. -- text alignment: 1
  2693. -- font id: 3
  2694. -- text size: 12
  2695. -- style flags: 256
  2696. -- line height: 16
  2697. -- part name: YInt
  2698. ----- HyperTalk script -----
  2699. on mouseup
  2700. end mouseUp
  2701.  
  2702. on mousedown
  2703. end mousedown
  2704.  
  2705.  
  2706. -- part 177 (field)
  2707. -- low flags: 80
  2708. -- high flags: 2002
  2709. -- rect: left=251 top=169 right=195 bottom=365
  2710. -- title width / last selected line: 0
  2711. -- icon id / first selected line: 0 / 0
  2712. -- text alignment: 1
  2713. -- font id: 3
  2714. -- text size: 12
  2715. -- style flags: 256
  2716. -- line height: 16
  2717. -- part name: YMin
  2718. ----- HyperTalk script -----
  2719. on mouseup
  2720. end mouseUp
  2721.  
  2722. on mousedown
  2723. end mousedown
  2724.  
  2725.  
  2726. -- part 186 (button)
  2727. -- low flags: 80
  2728. -- high flags: 8002
  2729. -- rect: left=138 top=41 right=67 bottom=365
  2730. -- title width / last selected line: 0
  2731. -- icon id / first selected line: 0 / 0
  2732. -- text alignment: 1
  2733. -- font id: 0
  2734. -- text size: 12
  2735. -- style flags: 0
  2736. -- line height: 16
  2737. -- part name: Coordinate╩Axes
  2738. ----- HyperTalk script -----
  2739. on mouseUp
  2740. end mouseUp
  2741.  
  2742. on mouseDown
  2743. end mouseDown
  2744.  
  2745.  
  2746. -- part 187 (button)
  2747. -- low flags: 80
  2748. -- high flags: 8002
  2749. -- rect: left=138 top=67 right=93 bottom=252
  2750. -- title width / last selected line: 0
  2751. -- icon id / first selected line: 0 / 0
  2752. -- text alignment: 1
  2753. -- font id: 0
  2754. -- text size: 12
  2755. -- style flags: 0
  2756. -- line height: 16
  2757. -- part name: X╩Axis
  2758. ----- HyperTalk script -----
  2759. on mouseUp
  2760. end mouseUp
  2761.  
  2762. on mouseDown
  2763. end mouseDown
  2764.  
  2765.  
  2766. -- part 188 (button)
  2767. -- low flags: 80
  2768. -- high flags: 8002
  2769. -- rect: left=251 top=67 right=93 bottom=365
  2770. -- title width / last selected line: 0
  2771. -- icon id / first selected line: 0 / 0
  2772. -- text alignment: 1
  2773. -- font id: 0
  2774. -- text size: 12
  2775. -- style flags: 0
  2776. -- line height: 16
  2777. -- part name: Y╩Axis
  2778. ----- HyperTalk script -----
  2779. on mouseUp
  2780. end mouseUp
  2781.  
  2782. on mouseDown
  2783. end mouseDown
  2784.  
  2785.  
  2786. -- part 190 (button)
  2787. -- low flags: 80
  2788. -- high flags: 8002
  2789. -- rect: left=138 top=93 right=119 bottom=252
  2790. -- title width / last selected line: 0
  2791. -- icon id / first selected line: 0 / 0
  2792. -- text alignment: 1
  2793. -- font id: 0
  2794. -- text size: 12
  2795. -- style flags: 0
  2796. -- line height: 16
  2797. -- part name: Maximum╩X
  2798. ----- HyperTalk script -----
  2799. on mouseUp
  2800. end mouseUp
  2801.  
  2802. on mouseDown
  2803. end mouseDown
  2804.  
  2805.  
  2806. -- part 191 (button)
  2807. -- low flags: 80
  2808. -- high flags: 8002
  2809. -- rect: left=251 top=93 right=119 bottom=365
  2810. -- title width / last selected line: 0
  2811. -- icon id / first selected line: 0 / 0
  2812. -- text alignment: 1
  2813. -- font id: 0
  2814. -- text size: 12
  2815. -- style flags: 0
  2816. -- line height: 16
  2817. -- part name: Maximum╩Y
  2818. ----- HyperTalk script -----
  2819. on mouseUp
  2820. end mouseUp
  2821.  
  2822. on mouseDown
  2823. end mouseDown
  2824.  
  2825.  
  2826. -- part 193 (button)
  2827. -- low flags: 80
  2828. -- high flags: 8002
  2829. -- rect: left=138 top=195 right=221 bottom=252
  2830. -- title width / last selected line: 0
  2831. -- icon id / first selected line: 0 / 0
  2832. -- text alignment: 1
  2833. -- font id: 0
  2834. -- text size: 12
  2835. -- style flags: 0
  2836. -- line height: 16
  2837. -- part name: X╩Interval
  2838. ----- HyperTalk script -----
  2839. on mouseUp
  2840. end mouseUp
  2841.  
  2842. on mouseDown
  2843. end mouseDown
  2844.  
  2845.  
  2846. -- part 194 (button)
  2847. -- low flags: 80
  2848. -- high flags: 8002
  2849. -- rect: left=251 top=195 right=221 bottom=365
  2850. -- title width / last selected line: 0
  2851. -- icon id / first selected line: 0 / 0
  2852. -- text alignment: 1
  2853. -- font id: 0
  2854. -- text size: 12
  2855. -- style flags: 0
  2856. -- line height: 16
  2857. -- part name: Y╩Interval
  2858. ----- HyperTalk script -----
  2859. on mouseUp
  2860. end mouseUp
  2861.  
  2862. on mouseDown
  2863. end mouseDown
  2864.  
  2865.  
  2866. -- part 196 (button)
  2867. -- low flags: 80
  2868. -- high flags: 8002
  2869. -- rect: left=138 top=144 right=170 bottom=252
  2870. -- title width / last selected line: 0
  2871. -- icon id / first selected line: 0 / 0
  2872. -- text alignment: 1
  2873. -- font id: 0
  2874. -- text size: 12
  2875. -- style flags: 0
  2876. -- line height: 16
  2877. -- part name: Minimum╩X
  2878. ----- HyperTalk script -----
  2879. on mouseUp
  2880. end mouseUp
  2881.  
  2882. on mouseDown
  2883. end mouseDown
  2884.  
  2885.  
  2886. -- part 197 (button)
  2887. -- low flags: 80
  2888. -- high flags: 8002
  2889. -- rect: left=251 top=144 right=170 bottom=365
  2890. -- title width / last selected line: 0
  2891. -- icon id / first selected line: 0 / 0
  2892. -- text alignment: 1
  2893. -- font id: 0
  2894. -- text size: 12
  2895. -- style flags: 0
  2896. -- line height: 16
  2897. -- part name: Minimum╩Y
  2898. ----- HyperTalk script -----
  2899. on mouseUp
  2900. end mouseUp
  2901.  
  2902. on mouseDown
  2903. end mouseDown
  2904.  
  2905.  
  2906. -- part 201 (button)
  2907. -- low flags: 80
  2908. -- high flags: A003
  2909. -- rect: left=378 top=169 right=191 bottom=483
  2910. -- title width / last selected line: 0
  2911. -- icon id / first selected line: 0 / 0
  2912. -- text alignment: 1
  2913. -- font id: 0
  2914. -- text size: 12
  2915. -- style flags: 0
  2916. -- line height: 16
  2917. -- part name: Abort╩Graph
  2918. ----- HyperTalk script -----
  2919. on mouseUp
  2920.   global Mode
  2921.   put "NoGraph" into Mode
  2922.   send mouseUp to background button "Axes┬áOkay"
  2923. end mouseUp
  2924.  
  2925. on mouseDown
  2926. end mouseDown
  2927.  
  2928.  
  2929. -- part 202 (button)
  2930. -- low flags: 80
  2931. -- high flags: 8002
  2932. -- rect: left=26 top=24 right=44 bottom=83
  2933. -- title width / last selected line: 0
  2934. -- icon id / first selected line: 0 / 0
  2935. -- text alignment: 1
  2936. -- font id: 0
  2937. -- text size: 12
  2938. -- style flags: 0
  2939. -- line height: 16
  2940. -- part name: ╩X╩
  2941. ----- HyperTalk script -----
  2942. on mouseUp
  2943. end mouseUp
  2944.  
  2945. On mouseDown
  2946. end mouseDown
  2947.  
  2948.  
  2949.  
  2950. -- part 203 (button)
  2951. -- low flags: 80
  2952. -- high flags: 8002
  2953. -- rect: left=91 top=24 right=44 bottom=148
  2954. -- title width / last selected line: 0
  2955. -- icon id / first selected line: 0 / 0
  2956. -- text alignment: 1
  2957. -- font id: 0
  2958. -- text size: 12
  2959. -- style flags: 0
  2960. -- line height: 16
  2961. -- part name: ╩Y╩
  2962. ----- HyperTalk script -----
  2963. on mouseUp
  2964. end mouseUp
  2965.  
  2966. On mouseDown
  2967. end mouseDown
  2968.  
  2969.  
  2970.  
  2971. -- part 205 (field)
  2972. -- low flags: 80
  2973. -- high flags: 2004
  2974. -- rect: left=141 top=128 right=213 bottom=341
  2975. -- title width / last selected line: 0
  2976. -- icon id / first selected line: 0 / 0
  2977. -- text alignment: 0
  2978. -- font id: 0
  2979. -- text size: 12
  2980. -- style flags: 0
  2981. -- line height: 16
  2982. -- part name: Shimmer
  2983.  
  2984.  
  2985. -- part 206 (button)
  2986. -- low flags: 80
  2987. -- high flags: 0002
  2988. -- rect: left=0 top=95 right=112 bottom=13
  2989. -- title width / last selected line: 0
  2990. -- icon id / first selected line: 8276 / 8276
  2991. -- text alignment: 1
  2992. -- font id: 0
  2993. -- text size: 12
  2994. -- style flags: 0
  2995. -- line height: 16
  2996. -- part name: LockScreenButtons
  2997. ----- HyperTalk script -----
  2998. --Make LockScreen button
  2999.  
  3000. on mouseUp
  3001.   CreateButton 207
  3002.   choose browse tool
  3003. end mouseUp
  3004.  
  3005. on mouseDown
  3006. end mouseDown
  3007.  
  3008.  
  3009. -- part 207 (button)
  3010. -- low flags: 80
  3011. -- high flags: 0000
  3012. -- rect: left=0 top=89 right=120 bottom=12
  3013. -- title width / last selected line: 0
  3014. -- icon id / first selected line: 0 / 0
  3015. -- text alignment: 1
  3016. -- font id: 0
  3017. -- text size: 12
  3018. -- style flags: 0
  3019. -- line height: 16
  3020. -- part name: LockScreen
  3021. ----- HyperTalk script -----
  3022. on mouseUp
  3023.   if the optionKey is down then GiveHelp "LockScreen┬á"
  3024.   else pass mouseUp
  3025. end mouseUp
  3026.  
  3027. on mousedown
  3028.   if the optionKey is up then pass mouseDown
  3029. end mouseDown
  3030.  
  3031.  
  3032. -- part 209 (button)
  3033. -- low flags: 80
  3034. -- high flags: 0000
  3035. -- rect: left=0 top=19 right=50 bottom=12
  3036. -- title width / last selected line: 0
  3037. -- icon id / first selected line: 0 / 0
  3038. -- text alignment: 1
  3039. -- font id: 0
  3040. -- text size: 12
  3041. -- style flags: 0
  3042. -- line height: 16
  3043. -- part name: Delay
  3044. ----- HyperTalk script -----
  3045. on mouseUp
  3046.   if the optionKey is down then GiveHelp "Delay┬á"
  3047.   else pass mouseUp
  3048. end mouseUp
  3049.  
  3050. on mousedown
  3051.   if the optionKey is up then pass mouseDown
  3052. end mouseDown
  3053.  
  3054.  
  3055. -- part 210 (button)
  3056. -- low flags: 80
  3057. -- high flags: 0000
  3058. -- rect: left=0 top=55 right=86 bottom=12
  3059. -- title width / last selected line: 0
  3060. -- icon id / first selected line: 0 / 0
  3061. -- text alignment: 1
  3062. -- font id: 0
  3063. -- text size: 12
  3064. -- style flags: 0
  3065. -- line height: 16
  3066. -- part name: Beep
  3067. ----- HyperTalk script -----
  3068. on mouseUp
  3069.   if the optionKey is down then GiveHelp "Beep┬á"
  3070.   else pass mouseUp
  3071. end mouseUp
  3072.  
  3073. on mousedown
  3074.   if the optionKey is up then pass mouseDown
  3075. end mouseDown
  3076.  
  3077.  
  3078. -- part 226 (button)
  3079. -- low flags: 80
  3080. -- high flags: A003
  3081. -- rect: left=378 top=133 right=166 bottom=483
  3082. -- title width / last selected line: 0
  3083. -- icon id / first selected line: 0 / 0
  3084. -- text alignment: 1
  3085. -- font id: 0
  3086. -- text size: 12
  3087. -- style flags: 0
  3088. -- line height: 16
  3089. -- part name: Axes╩Okay
  3090. ----- HyperTalk script -----
  3091. on mouseUp
  3092.   global Mode, ObjectID
  3093.   hide background button id 186 --Coordinate Axes
  3094.   hide background button id 187 --X┬áAxis
  3095.   hide background button id 188 --Y┬áAxis
  3096.   hide background button id 190 --Maximum┬áX
  3097.   hide background button id 191 --Maximum┬áY
  3098.   hide field id 166 --XMax
  3099.   hide field id 173 --YMax
  3100.   hide background button id 196 --Minimum┬áX
  3101.   hide background button id 197 --Minimum┬áY
  3102.   hide field id 170 --XMin
  3103.   hide field id 177 --YMin
  3104.   hide background button id 193 --X┬áInterval
  3105.   hide background button id 194 --Y┬áInterval
  3106.   hide field id 168 --XInt
  3107.   hide field id 175 --YInt
  3108.   hide background button id 227 --X┬áUnit┬áLabel
  3109.   hide background button id 228 --Y┬áUnit┬áLabel
  3110.   hide field id 231 --XLabel
  3111.   hide field id 230 --YLabel
  3112.   hide background button id 226 --Axes┬áOkay
  3113.   hide background button id 201 --Abort┬áGraph
  3114.   if Mode is not "NoGraph"
  3115.   then
  3116.   show field "RequestGraphType" --requests type of graph
  3117.   put return & return & "Select desired type of graph:" into field "RequestGraphType"
  3118.   show background button "Line Graph"
  3119.   show background button "Bar Graph"
  3120.   show background button "Plot Graph"
  3121.   show background button "Pie Graph"
  3122.   if line 4 of field id 155 is empty then
  3123.     Createbutton 267
  3124.     put ObjectID into line 4 of field id 155
  3125.     choose browse tool
  3126.   end if
  3127. else
  3128.   put empty into line 3 of field id 155
  3129.   show card picture
  3130. end if
  3131. put empty into mode
  3132. end mouseUp
  3133.  
  3134. on mouseDown
  3135. end mouseDown
  3136.  
  3137.  
  3138. -- part 227 (button)
  3139. -- low flags: 80
  3140. -- high flags: 8002
  3141. -- rect: left=138 top=246 right=272 bottom=252
  3142. -- title width / last selected line: 0
  3143. -- icon id / first selected line: 0 / 0
  3144. -- text alignment: 1
  3145. -- font id: 0
  3146. -- text size: 12
  3147. -- style flags: 0
  3148. -- line height: 16
  3149. -- part name: X╩Unit╩Label
  3150. ----- HyperTalk script -----
  3151. on mouseUp
  3152. end mouseUp
  3153.  
  3154. on mouseDown
  3155. end mouseDown
  3156.  
  3157.  
  3158. -- part 228 (button)
  3159. -- low flags: 80
  3160. -- high flags: 8002
  3161. -- rect: left=251 top=246 right=272 bottom=365
  3162. -- title width / last selected line: 0
  3163. -- icon id / first selected line: 0 / 0
  3164. -- text alignment: 1
  3165. -- font id: 0
  3166. -- text size: 12
  3167. -- style flags: 0
  3168. -- line height: 16
  3169. -- part name: Y╩Unit╩Label
  3170. ----- HyperTalk script -----
  3171. on mouseUp
  3172. end mouseUp
  3173.  
  3174. on mouseDown
  3175. end mouseDown
  3176.  
  3177.  
  3178. -- part 230 (field)
  3179. -- low flags: 80
  3180. -- high flags: 2002
  3181. -- rect: left=251 top=271 right=297 bottom=365
  3182. -- title width / last selected line: 0
  3183. -- icon id / first selected line: 0 / 0
  3184. -- text alignment: 0
  3185. -- font id: 3
  3186. -- text size: 12
  3187. -- style flags: 256
  3188. -- line height: 16
  3189. -- part name: YLabel
  3190. ----- HyperTalk script -----
  3191. on mouseup
  3192. end mouseUp
  3193.  
  3194. on mousedown
  3195. end mousedown
  3196.  
  3197.  
  3198. -- part 231 (field)
  3199. -- low flags: 80
  3200. -- high flags: 2002
  3201. -- rect: left=20 top=271 right=297 bottom=252
  3202. -- title width / last selected line: 0
  3203. -- icon id / first selected line: 0 / 0
  3204. -- text alignment: 65535
  3205. -- font id: 3
  3206. -- text size: 12
  3207. -- style flags: 256
  3208. -- line height: 16
  3209. -- part name: XLabel
  3210. ----- HyperTalk script -----
  3211. on mouseup
  3212. end mouseUp
  3213.  
  3214. on mousedown
  3215. end mousedown
  3216.  
  3217.  
  3218. -- part 233 (button)
  3219. -- low flags: 80
  3220. -- high flags: 0002
  3221. -- rect: left=0 top=131 right=148 bottom=13
  3222. -- title width / last selected line: 0
  3223. -- icon id / first selected line: 45 / 45
  3224. -- text alignment: 1
  3225. -- font id: 0
  3226. -- text size: 12
  3227. -- style flags: 0
  3228. -- line height: 16
  3229. -- part name: OpenerMaker
  3230. ----- HyperTalk script -----
  3231. --Make Opener button
  3232.  
  3233. on mouseUp
  3234.   CreateButton 234
  3235.   choose browse tool
  3236. end mouseUp
  3237.  
  3238. on mouseDown
  3239. end mouseDown
  3240.  
  3241.  
  3242. -- part 234 (button)
  3243. -- low flags: 80
  3244. -- high flags: 0000
  3245. -- rect: left=0 top=123 right=154 bottom=12
  3246. -- title width / last selected line: 0
  3247. -- icon id / first selected line: 0 / 0
  3248. -- text alignment: 1
  3249. -- font id: 0
  3250. -- text size: 12
  3251. -- style flags: 0
  3252. -- line height: 16
  3253. -- part name: Opener
  3254. ----- HyperTalk script -----
  3255. on mouseUp
  3256.   if the optionKey is down then GiveHelp "On OpenCard┬á"
  3257.   else pass mouseUp
  3258. end mouseUp
  3259.  
  3260. on mousedown
  3261.   if the optionKey is up then pass mouseDown
  3262. end mouseDown
  3263.  
  3264.  
  3265. -- part 237 (field)
  3266. -- low flags: 81
  3267. -- high flags: 2004
  3268. -- rect: left=59 top=253 right=295 bottom=436
  3269. -- title width / last selected line: 0
  3270. -- icon id / first selected line: 0 / 0
  3271. -- text alignment: 65535
  3272. -- font id: 91
  3273. -- text size: 24
  3274. -- style flags: 0
  3275. -- line height: 32
  3276. -- part name: TypeWriter
  3277.  
  3278.  
  3279. -- part 243 (field)
  3280. -- low flags: 80
  3281. -- high flags: 0002
  3282. -- rect: left=24 top=17 right=307 bottom=482
  3283. -- title width / last selected line: 0
  3284. -- icon id / first selected line: 0 / 0
  3285. -- text alignment: 0
  3286. -- font id: 3
  3287. -- text size: 12
  3288. -- style flags: 0
  3289. -- line height: 16
  3290. -- part name: Scripts
  3291. ----- HyperTalk script -----
  3292. on draw
  3293.   --handles drawing & recording lines and arrows
  3294.   global lineFlag
  3295.   if lineFlag is 2 or lineFlag is 4 then getPoint2
  3296.   if LineFlag is 3 then getPoint1 1   --with arrowhead
  3297.   if lineFlag is 1 then getPoint1 0   --without arrowhead
  3298.   hide msg
  3299. end draw
  3300.  
  3301. on getPoint1 tip
  3302.   global lineStyle, lineFlag, SX, SY, Speed, NextLine
  3303.   put item 1 of the clickLoc into SX
  3304.   put item 2 of the clickLoc into SY
  3305.   if lineStyle is "wavy"
  3306.   then
  3307.   put 1 into line NextLine of field "LineSpecs"
  3308.   put 2*(round(SX/2)) into SX
  3309.   put 2*(round(SY/2)) into SY
  3310. else if LineStyle is "Dotted"
  3311. then
  3312. put 3 into line NextLine of field "LineSpecs"
  3313. else
  3314.   put 0 into line NextLine of field "LineSpecs"
  3315. end if
  3316. put space & tip after line NextLine of field "LineSpecs"
  3317. add 1 to lineFlag
  3318. end getpoint1
  3319.  
  3320. on getPoint2
  3321.   global lineStyle, lineFlag, SX, SY, Speed, NextLine, Mode
  3322.   put 0 into lineFlag
  3323.   put item 1 of the clickLoc into FX
  3324.   put item 2 of the clickLoc into FY
  3325.   if lineStyle is "Wavy"
  3326.   then
  3327.   put 2*(round(FX/2)) into FX
  3328.   put 2*(round(FY/2)) into FY
  3329. end if
  3330. if abs(SX-FX) <= abs(SY-FY)
  3331. then --vertical
  3332. put min(SX,FX) into SX
  3333. put min(SX,FX) into FX
  3334. if lineStyle is "Dotted"
  3335. then
  3336. put 4 into word 1 of line NextLine of field "LineSpecs"
  3337. end if
  3338. else --horizontal
  3339.   put min(SY,FY) into SY
  3340.   put min(SY,FY) into FY
  3341.   if lineStyle is "Dotted"
  3342.   then
  3343.   put 3 into word 1 of line NextLine of field "LineSpecs"
  3344. end if
  3345. end if
  3346. put " " & SX && SY && FX && FY & "," after line NextLine of field "LineSpecs"
  3347. put 2000 into Speed
  3348. GetLines
  3349. put 100 into Speed
  3350. put empty into Mode
  3351. end getPoint2
  3352.  
  3353.  
  3354. function list wordstring
  3355. put word 1 of wordstring into newlist
  3356. repeat with i = 2 to the number of words in wordstring
  3357.   put "," & word i of wordstring after newlist
  3358. end repeat
  3359. return newlist
  3360. end list
  3361.  
  3362. on GetLines
  3363.   global NextLine, Specs
  3364.   put line NextLine of field "lineSpecs" into LineList
  3365.   --each item gives specifications for another line
  3366.   --in each item:
  3367.   --word 1: 0 for straight line, 1 for wavy
  3368.   --        2 for white (erase), 3 for dotted
  3369.   --word 2: 0 for line only, 1 for arrow
  3370.   --remaining words (in pairs): coordinates of segment endpoints
  3371.   repeat with i = 1 to the number of items in LineList
  3372.     put List(item i of LineList) into Specs    --converts words to items
  3373.     DrawLine
  3374.   end repeat
  3375. end GetLines
  3376.  
  3377. on DrawLine
  3378.   global Speed, lineWidth, Start, Specs
  3379.   choose line tool
  3380.   put item 3 to 4 of Specs into Start
  3381.   put item 5 to 6 of specs into Finish
  3382.   if item 2 of Specs is 1
  3383.   then
  3384.   DrawArrowHead Specs
  3385. end if
  3386. set lineSize to lineWidth
  3387. set the dragSpeed to Speed
  3388. if item 1 of Specs is 1 then        --wavy line
  3389.   set pattern to 7
  3390. else if item 1 of Specs is 2 then   --white line (erase)
  3391.   set pattern to 1
  3392. else if item 1 of Specs is 3 then   --horizontal dotted line
  3393.   set pattern to 37
  3394. else if item 1 of Specs is 4 then   --vertical dotted line
  3395.   set pattern to 38
  3396. else                                --solid line; item 1 is 0
  3397.   set pattern to 12
  3398. end if
  3399. unlock screen
  3400. drag from Start to Finish with optionKey  --draw first line segment
  3401. delete item 1 to 4 of Specs
  3402. repeat until the number of items in Specs <= 2
  3403.   put item 1 to 2 of Specs into Start
  3404.   put item 3 to 4 of Specs into Finish
  3405.   drag from start to finish with optionKey
  3406.   delete item 1 to 2 of Specs
  3407. end repeat
  3408. choose browse tool
  3409. end DrawLine
  3410.  
  3411. on DrawArrowHead wanted
  3412.   global Start
  3413.   put Start into Tip
  3414.   put 8 into trim                       --used to correct Start of shaft
  3415.   put item 3 of wanted into TX
  3416.   put item 4 of wanted into TY
  3417.   put item 5 of wanted into SX
  3418.   put item 6 of wanted into SY
  3419.   if SX < TX       --point right
  3420.   then
  3421.   put ((TX - 6)&","&(TY - 6)) into LeftBarb
  3422.   put ((TX - 6)&","&(TY + 6)) into RightBarb
  3423.   put TX - trim into item 1 of Start
  3424. else
  3425.   if TX < SX     --point left
  3426.   then
  3427.   put ((TX + 6)&","&(TY - 6)) into LeftBarb
  3428.   put ((TX + 6)&","&(TY + 6)) into RightBarb
  3429.   put TX + trim into item 1 of Start
  3430. else
  3431.   if TY < SY    --point up
  3432.   then
  3433.   put ((TX - 6)&","&(TY + 6)) into LeftBarb
  3434.   put ((TX + 6)&","&(TY + 6)) into RightBarb
  3435.   Put TY + trim into item 2 of Start
  3436. else          --point down
  3437.   put ((TX - 6)&","&(TY - 6)) into LeftBarb
  3438.   put ((TX + 6)&","&(TY - 6)) into RightBarb
  3439.   put TY - trim into item 2 of Start
  3440. end if
  3441. end if
  3442. end if
  3443. set the lineSize to 1
  3444. set the dragspeed to 2000
  3445. drag from LeftBarb to Tip
  3446. drag from Tip to RightBarb
  3447. drag from RightBarb to LeftBarb
  3448. choose bucket tool
  3449. set the pattern to 12
  3450. put round(((item 1 of tip)+(item 1 of start))/2) into X
  3451. put round(((item 2 of tip)+(item 2 of start))/2) into Y
  3452. click at X,Y
  3453. choose line tool
  3454. set the lineSize to 3
  3455. end DrawArrowHead
  3456.  
  3457. on ConnectFields
  3458.   global Rect1, Rect2, lineWidth, Specs
  3459.   put the id of the target into wanted
  3460.   requestPatience
  3461.   if (item 1 of Rect1) - (item 3 of Rect2) > 17  then
  3462.     put Rect2 into temp
  3463.     put Rect1 into Rect2
  3464.     put temp into Rect1
  3465.   end if
  3466.   if (item 2 of Rect1) - (item 4 of Rect2) > 17  then
  3467.     put Rect2 into temp
  3468.     put Rect1 into Rect2
  3469.     put temp into Rect1
  3470.   end if
  3471.   put item 1 of Rect1 into Lft1
  3472.   put item 2 of Rect1 into Top1
  3473.   put item 3 of Rect1 into Rit1
  3474.   put item 4 of Rect1 into Bot1
  3475.   put item 1 of Rect2 into Lft2
  3476.   put item 2 of Rect2 into Top2
  3477.   put item 3 of Rect2 into Rit2
  3478.   put item 4 of Rect2 into Bot2
  3479.   put 2 into item 1 of specs --initially, draw white line (i.e. erase)
  3480.   put 0 into item 2 of specs --no arrowhead
  3481.   if Top2 - Bot1 > 17 then
  3482.     put round(average(Lft1,Rit1)) into X1
  3483.     put Bot1 into Y1
  3484.     put X1 into X2
  3485.     put round(average(Bot1,Top2)) into Y2
  3486.     put round(average(Lft2,Rit2)) into X3
  3487.     put Y2 into Y3
  3488.     put X3 into X4
  3489.     put Top2 into Y4
  3490.     if abs(X1 - X4) < 10
  3491.     then
  3492.     put X1 into X2
  3493.     put X1 into X3
  3494.     put X1 into X4
  3495.   end if
  3496. else if Lft2 - Rit1 > 17 then
  3497.   put Rit1 into X1
  3498.   put round(average(Top1,Bot1)) into Y1
  3499.   put round(average(Rit1,Lft2)) into X2
  3500.   put Y1 into Y2
  3501.   put X2 into X3
  3502.   put round(average(Bot2,Top2)) into Y3
  3503.   put Lft2 into X4
  3504.   put Y3 into Y4
  3505.   if abs(Y1 - Y4) < 10
  3506.   then
  3507.   put Y1 into Y2
  3508.   put Y1 into Y3
  3509.   put Y1 into Y4
  3510. end if
  3511. else
  3512.   answer "Can't connect such close fields."
  3513.   exit connectFields
  3514. end if
  3515. put X1 into item 3  of Specs
  3516. put Y1 into item 4  of Specs
  3517. put X2 into item 5  of Specs
  3518. put Y2 into item 6  of Specs
  3519. put X3 into item 7  of Specs
  3520. put Y3 into item 8  of Specs
  3521. put X4 into item 9  of specs
  3522. put Y4 into item 10 of Specs
  3523. put 6 into lineWidth
  3524. put specs into temp
  3525. DrawLine        --draw wide white line (i.e. erase)
  3526. put temp into Specs
  3527. put 0 into item 1 of Specs
  3528. put 4 into LineWidth
  3529. Drawline        --draw narrower black line
  3530. put 3 into lineWidth   --restore to standard width for lines
  3531. end ConnectFields
  3532.  
  3533. on ClearCard except
  3534.   global CardButtons, CardFields
  3535.   put empty into CardButtons
  3536.   repeat with i = 1 to the number of buttons
  3537.     if the id of button i is not item 1 of Except
  3538.     --(line 2 of field "GraphArea", if anything)
  3539.     then
  3540.     if the visible of button i is true then
  3541.       put the id of button i into item i of CardButtons
  3542.     end if
  3543.   end if
  3544.   hide button i
  3545. end repeat
  3546. put empty into CardFields
  3547. repeat with i = 1 to the number of card fields
  3548.   if the id of card field i is not item 2 of Except
  3549.   --(line 1 of field "GraphArea")
  3550.   then
  3551.   if the visible of card field i is true then
  3552.     put the id of card field i into item i of CardFields
  3553.   end if
  3554. end if
  3555. hide card field i
  3556. end repeat
  3557. hide card picture
  3558. end ClearCard
  3559.  
  3560. on RestoreCard
  3561.   global CardButtons, CardFields
  3562.   show card picture
  3563.   repeat with i = 1 to the number of items of CardFields
  3564.     if item i of CardFields is not empty
  3565.     then show card field id (item i of CardFields)
  3566.   end repeat
  3567.   repeat with i = 1 to the number of items of CardButtons
  3568.     if item i of CardButtons is not empty
  3569.     then show button id (item i of CardButtons)
  3570.   end repeat
  3571. end RestoreCard
  3572.  
  3573. on MakeGraph
  3574.   global Mode, XCoords, YCoords,XChanged, YChanged
  3575.   put "Graph" into Mode
  3576.   put false into XChanged
  3577.   put false into YChanged
  3578.   put line 2 of field "GraphArea" into item 1 of Except
  3579.   put line 1 of field "GraphArea" into item 2 of Except
  3580.   ClearCard Except
  3581.   Show background button id 202 --X
  3582.   Show background button id 203 --Y
  3583.   Show field "XValues"
  3584.   put field "XValues" into XCoords
  3585.   Show field "YValues"
  3586.   put field "YValues" into YCoords
  3587.   ShowGraphInstructions
  3588.   Show background button id 154 --"Values OK"
  3589.   Show background button id 149 --"No Change"
  3590.   Show background button id 150 --"Delete Graph"
  3591.   set the locktext of field "XValues" to false
  3592.   set the locktext of field "YValues" to false
  3593.   select after line 1 of field "XValues"
  3594. end MakeGraph
  3595.  
  3596. on ShowGraphInstructions
  3597.   Show field "GraphEntry" --(to hold Instructions)
  3598.   put return & "Enter X and Y numerical values" & return into contents
  3599.   put "in the columns at the left." & return & return after contents
  3600.   put "X values should be in ascending" & return after contents
  3601.   put "or descending order." & return & return after contents
  3602.   put "If X column is left empty," & return after contents
  3603.   put "equal unlabelled intervals" & return after contents
  3604.   put "will be assumed." & return & return after contents
  3605.   put "For pie graphs, use Y column only." after contents
  3606.   put contents into field "GraphEntry"
  3607. end ShowGraphInstructions
  3608.  
  3609. on DefineArea
  3610.   global Mode, XCoords, YCoords, XChanged, YChanged
  3611.   HideGraphStarters
  3612.   RestoreCard
  3613.   if Mode is "NoGraph" then
  3614.     put empty into field "XValues"
  3615.     put empty into field "YValues"
  3616.     put empty into Mode
  3617.     put empty into line 3 of field "GraphArea" --records Mode
  3618.     exit to HyperCard
  3619.   end if
  3620.   if XCoords <> field "XValues" then
  3621.     put field "XValues" into XCoords
  3622.     put true into XChanged
  3623.   end if
  3624.   if YCoords <> field "YValues" then
  3625.     put field "YValues" into YCoords
  3626.     put true into YChanged
  3627.   end if
  3628.   ShowAreaSetters
  3629.   choose field tool
  3630.   select card field id (line 1 of field "GraphArea")
  3631. end DefineArea
  3632.  
  3633. on HideGraphStarters
  3634.   Hide background button id 150     --Delete Graph
  3635.   Hide background button id 149     --No Change
  3636.   Hide background button id 154     --ValuesOK
  3637.   Hide background button id 202     --X
  3638.   Hide field "XValues"
  3639.   Hide background button id 203     --Y
  3640.   Hide field "YValues"
  3641.   Hide field "GraphEntry"
  3642. end HideGraphStarters
  3643.  
  3644. on ShowAreaSetters
  3645.   global ObjectID
  3646.   requestPatience
  3647.   lock screen
  3648.   if field "GraphArea" is empty
  3649.   then
  3650.   CreateField 155  --GraphArea
  3651.   put ObjectID into line 1 of field "GraphArea"
  3652.   Put return & return & "Adjust the size and location of this field " & "to the size and location desired for your graph." & return&return & "Allow some room at left and bottom for labels." & return&return & "Then restore browse tool " & return & "and click " & quote & "Area OK" & quote & "." into card field id (line 1 of field "GraphArea")
  3653.   CreateButton 156 --Area Okay
  3654.   put ObjectID into line 2 of field "GraphArea"
  3655. else
  3656.   show card field id (line 1 of field "GraphArea")
  3657.   if the short name of card field (the number of card fields) is not "GraphArea" or the id of button (the number of buttons) > (line 1 of field "GraphArea") then
  3658.     select card field id (line 1 of field "GraphArea")
  3659.     type "+" with Shiftkey,CommandKey
  3660.   end if
  3661.   show button id (line 2 of field "GraphArea")
  3662.   if the short name of button (the number of buttons) is not "Area OK" or the id of card field (the number of card fields) > (line 2 of field "GraphArea") then
  3663.     select button id (line 2 of field "GraphArea")
  3664.     type "+" with Shiftkey,CommandKey
  3665.   end if
  3666.   choose browse tool
  3667. end if
  3668. put empty into msg
  3669. hide msg
  3670. unlock screen
  3671. end ShowAreaSetters
  3672.  
  3673. on GetGraphLabels
  3674.   global XCoords
  3675.   Hide card field id (line 1 of field "GraphArea") --GraphArea
  3676.   Hide button id (line 2 of field "GraphArea") -- Area Okay
  3677.   PresetLabelParams
  3678.   put line 2 of field "GraphArea" into item 1 of Except
  3679.   put line 1 of field "GraphArea" into item 2 of Except
  3680.   ClearCard Except
  3681.   ShowLabelTable
  3682.   if XCoords is empty then select line 1 of field "YMax"
  3683.   else select line 1 of field "XMax"
  3684. end GetGraphLabels
  3685.  
  3686. on PresetLabelParams
  3687.   global XCoords, YCoords, MaxX, MaxY, MinX, MinY, IntX, IntY
  3688.   put list(field "XValues") into XCoords
  3689.   put list(field "YValues") into YCoords
  3690.   put max(XCoords) into MaxX
  3691.   put min(XCoords) into MinX
  3692.   put max(YCoords) into MaxY
  3693.   put min(YCoords) into MinY
  3694.   if 0 < MinX and 2*MinX < MaxX then put 0 into MinX
  3695.   if 0 < MinY and 2*MinY < MaxY then put 0 into MinY
  3696.   HandleEmptyX
  3697.   put round((MaxX - MinX)/10) into IntX
  3698.   put round((MaxY - MinY)/10) into IntY
  3699.   if IntX = 0 then put 1 into IntX
  3700.   if IntY = 0 then put 1 into IntY
  3701. end PresetLabelParams
  3702.  
  3703. on HandleEmptyX
  3704.   global XCoords, MaxX, MinX, IntX, MaxY, MinY, IntY, XChanged
  3705.   if MinX = 0 and MaxX = 0
  3706.   then
  3707.   put empty into XCoords
  3708.   put empty into field "XValues"
  3709.   put "AUTO" into field "XMax"
  3710.   set the lockText of field "XMax" to true
  3711.   put "AUTO" into field "XMin"
  3712.   set the lockText of field "XMin" to true
  3713.   put "AUTO" into field "XInt"
  3714.   set the lockText of field "XInt" to true
  3715.   put "UNLABELLED" into field "XLabel"
  3716.   set the lockText of field "XLabel" to true
  3717.   put false into XChanged
  3718. else
  3719.   if MinX = MaxX then put Min(0,(MinX-1)) into MinX
  3720.   if MinY = MaxY then put Min(0,(MinY-1)) into MinY
  3721.   set the lockText of field "XMax" to false
  3722.   if "AUTO" is in field "XMax" then put MaxX into field "XMax"
  3723.   set the lockText of field "XMin" to false
  3724.   if "AUTO" is in field "XMin" then put MinX into field "XMin"
  3725.   set the lockText of field "XInt" to false
  3726.   if "AUTO" is in field "XInt" then put IntX into field "XInt"
  3727.   set the lockText of field "XLabel" to false
  3728.   if "UNLABELLED" is in field "XLabel" then put empty into field "XLabel"
  3729. end if
  3730. end HandleEmptyX
  3731.  
  3732. on ShowLabelTable
  3733.   global MaxX, MaxY, MinX, MinY, IntX, IntY, XChanged, YChanged
  3734.   show background button id 186 --Coordinate Axes
  3735.   show background button id 187 --X Axis
  3736.   show background button id 188 --Y Axis
  3737.   show background button id 190 --Maximum X
  3738.   show background button id 191 --Maximum Y
  3739.   if XChanged then put MaxX into field "XMax"
  3740.   show field "XMax"
  3741.   if YChanged then put MaxY into field "YMax"
  3742.   show field "YMax"
  3743.   show background button id 196 --Minimum X
  3744.   show background button id 197 --Minimum Y
  3745.   if XChanged then put MinX into field "XMin"
  3746.   show field "XMin"
  3747.   if YChanged then put MinY into field "YMin"
  3748.   show field "YMin"
  3749.   show background button id 193 --X Interval
  3750.   show background button id 194 --Y Interval
  3751.   if XChanged then put IntX into field "XInt"
  3752.   show field "XInt"
  3753.   if YChanged then put IntY into field "YInt"
  3754.   show field "YInt"
  3755.   show background button id 227 --X Unit Label
  3756.   show background button id 228 --Y Unit Label
  3757.   if field "XLabel" is empty then put "MONTHS?" into field "XLabel"
  3758.   show field "XLabel"
  3759.   if field "YLabel" is empty then put "DOLLARS?" into field "YLabel"
  3760.   show field "YLabel"
  3761.   show background button id 226 --Axes Okay
  3762.   show background button id 201 --Abort Graph
  3763. end ShowLabelTable
  3764.  
  3765. on RecordGraphType
  3766.   global Mode
  3767.   put mode into line 3 of field "GraphArea" --record type of graph
  3768.   hide background button "Line Graph"
  3769.   hide background button "Bar Graph"
  3770.   hide background button "Plot Graph"
  3771.   hide background button "Pie Graph"
  3772.   hide field "RequestGraphType"
  3773.   RestoreCard
  3774.   put empty into mode
  3775.   DrawGraph
  3776. end RecordGraphType
  3777.  
  3778.  
  3779. on drawGraph
  3780.   global XCoords, YCoords, ObjectID, Mode
  3781.   put list(field "XValues") into XCoords
  3782.   put list(field "YValues") into YCoords
  3783.   put line 3 of field "GraphArea" into Mode
  3784.   if Mode is empty then exit to HyperCard
  3785.   if mode is "Line" then DrawLineGraph
  3786.   else if mode is "Bar" then DrawBarGraph
  3787.   else if mode is "Plot" then DrawPlotGraph
  3788.   else if mode is "Pie" then DrawPieGraph
  3789. end DrawGraph
  3790.  
  3791. on DrawLineGraph
  3792.   global XCoords, YCoords, XMax, XMin, YMax, YMin, GLeft, GRight, GTop, GBottom, Mode
  3793.   DrawFrame
  3794.   choose line tool
  3795.   put (GRight - GLeft)/(XMax - XMin) into XScale
  3796.   put (GBottom - GTop)/(YMax - YMin) into YScale
  3797.   if XCoords is empty then put 1 into X1
  3798.   else put item 1 of XCoords into X1
  3799.   if X1 is empty then put 0 into X1
  3800.   put GLeft + round((X1 - XMin)*XScale) into X1
  3801.   put item 1 of YCoords into Y1
  3802.   if Y1 is empty then put 0 into Y1
  3803.   put GBottom - round((Y1 - YMin)*YScale) into Y1
  3804.   repeat with i = 2 to the number of items in YCoords
  3805.     if XCoords is empty then put i into X2
  3806.     else put item i of XCoords into X2
  3807.     if X2 is empty then put 0 into X2
  3808.     put GLeft + round((X2 - XMin)*XScale) into X2
  3809.     put item i of YCoords into Y2
  3810.     if Y2 is empty then put 0 into Y2
  3811.     put GBottom - round((Y2 - YMin)*YScale) into Y2
  3812.     drag from X1,Y1 to X2,Y2
  3813.     put X2 into X1
  3814.     put Y2 into Y1
  3815.   end repeat
  3816.   choose browse tool
  3817.   put empty into Mode
  3818. end DrawLineGraph
  3819.  
  3820. on DrawFrame
  3821.   global GLeft, GRight, GTop, GBottom
  3822.   GetFrameGlobals
  3823.   choose line tool
  3824.   set lineSize to 3
  3825.   drag from (GLeft),(GTop) to (GLeft),(GBottom)     --Y Axis
  3826.   drag from (GLeft),(GBottom) to (GRight),(GBottom) --X Axis
  3827.   SetYTicks
  3828.   SetYLabel
  3829.   SetXTicks
  3830.   SetXLabel
  3831. end DrawFrame
  3832.  
  3833. on GetFrameGlobals
  3834.   global XCoords, YCoords, XMax, XMin, XInt, YMax, YMin, YInt, GLeft, GRight, GTop, GBottom
  3835.   put line 1 of field "GraphArea" into GraphArea
  3836.   put the Top of card field id GraphArea into GTop
  3837.   put the Bottom of card field id GraphArea into GBottom
  3838.   put the Left of card field id GraphArea into GLeft
  3839.   put the Right of card field id GraphArea into GRight
  3840.   put GLeft - GRight into XScale
  3841.   put GTop - GBottom into YScale
  3842.   if XCoords is empty
  3843.   then
  3844.   put 1 + (the number of items of YCoords) into XMax
  3845.   put 1 into XInt
  3846.   put 0 into XMin
  3847. else
  3848.   put field "XMax" into XMax
  3849.   put field "XInt" into XInt
  3850.   put field "XMin" into XMin
  3851. end if
  3852. put field "YMax" into YMax
  3853. put field "YInt" into YInt
  3854. put field "YMin" into YMin
  3855. end GetFrameGlobals
  3856.  
  3857. on SetYTicks
  3858.   global YMax, YMin, YInt, GLeft, GTop, GBottom, XSpot, YSpot
  3859.   choose text tool
  3860.   set the textFont to "Geneva"
  3861.   set the textSize to 12
  3862.   set the textAlign to "right"
  3863.   set the textStyle to plain
  3864.   put GLeft - 2 into XSpot
  3865.   put (YMax - YMin)/YInt into YIntervals
  3866.   repeat with i = 1 to trunc(YIntervals)
  3867.     put (GBottom - round(i*(GBottom - GTop)/YIntervals)) + 5 into YSpot
  3868.     click at XSpot,YSpot
  3869.     type (YMin + (i*YInt))
  3870.     type " ΓÇö"
  3871.   end repeat
  3872.   choose browse tool  --to protect material just typed
  3873. end SetYTicks
  3874.  
  3875. on SetYLabel
  3876.   global XSpot, YSpot
  3877.   choose text tool
  3878.   subtract (28 + 8*(length of field "YMax")) from XSpot
  3879.   --compensating for number of digits in widest label
  3880.   set the textAlign to center
  3881.   click at XSpot,Yspot
  3882.   repeat with i = 1 to the length of field "YLabel"
  3883.     type return & (char i of field "YLabel")
  3884.   end repeat
  3885.   choose browse tool --protects material just typed
  3886. end SetYLabel
  3887.  
  3888. on SetXTicks
  3889.   global XCoords, XMax, XMin, XInt, GLeft, GRight, GBottom, XSpot, YSpot
  3890.   put GBottom + 14 into YSpot
  3891.   if XCoords is not empty then choose text tool
  3892.   put (XMax - XMin)/XInt into XIntervals
  3893.   repeat with i = 1 to trunc(XIntervals)
  3894.     put (GLeft + round(i*(GRight - GLeft)/XIntervals)) into XSpot
  3895.     if XCoords is not empty
  3896.     then
  3897.     click at XSpot,YSpot
  3898.     type "|" & return
  3899.     type (XMin + (i*XInt))
  3900.   end if
  3901. end repeat
  3902. if XCoords is not empty then choose browse tool  --protects material
  3903. end SetXTicks
  3904.  
  3905. on SetXLabel
  3906.   global XCoords, XSpot, YSpot
  3907.   if "UNLABELLED" is not in field "XLabel" then
  3908.     choose text tool
  3909.     set the textalign to right
  3910.   end if
  3911.   if XCoords is not empty then add 30 to YSpot
  3912.   if "UNLABELLED" is not in field "XLabel" then
  3913.     click at XSpot, YSpot
  3914.     type field "XLabel"
  3915.     choose browse tool
  3916.     --protects material just typed
  3917.   end if
  3918. end SetXLabel
  3919.  
  3920. on DrawBarGraph
  3921.   global XCoords, YCoords, XMax, XMin, YMax, YMin, GLeft, GRight, GTop, GBottom, Mode
  3922.   DrawFrame
  3923.   choose line tool
  3924.   put (GRight - GLeft)/(XMax - XMin) into XScale
  3925.   put (GBottom - GTop)/(YMax - YMin) into YScale
  3926.   if XCoords is empty then put 1 into X1
  3927.   else put item 1 of XCoords into X1
  3928.   if X1 is empty then put 0 into X1
  3929.   put GLeft + round((X1 - XMin)*XScale) into X1
  3930.   put item 1 of YCoords into Y1
  3931.   if Y1 is empty then put 0 into Y1
  3932.   put GBottom - round((Y1 - YMin)*YScale) into Y1
  3933.   set lineSize to 8
  3934.   if Y1 <= (GBottom - 6) then drag from X1,(GBottom - 6) to X1,Y1
  3935.   else if Y1 >= (GBottom + 6) then drag from X1,(GBottom + 6) to X1,Y1
  3936.   set the pattern to 1 --white
  3937.   click at X1,(Y1-3) with optionKey  --clip off excess at top
  3938.   set the pattern to 12 --black again
  3939.   repeat with i = 2 to the number of items in YCoords
  3940.     if XCoords is empty then put i into X2
  3941.     else put item i of XCoords into X2
  3942.     if X2 is empty then put 0 into X2
  3943.     put GLeft + round((X2 - XMin)*XScale) into X2
  3944.     put item i of YCoords into Y2
  3945.     if Y2 is empty then put 0 into Y2
  3946.     put GBottom - round((Y2 - YMin)*YScale) into Y2
  3947.     if Y2 <= (GBottom - 6) then drag from X2,(GBottom - 6) to X2,Y2
  3948.     else if Y2 >= (GBottom + 6) then drag from X2,(GBottom + 6) to X2,Y2
  3949.     set the pattern to 1 --white
  3950.     click at X2,(Y2-3) with optionKey  --clip off excess at top
  3951.     set the pattern to 12 --black again
  3952.   end repeat
  3953.   choose browse tool
  3954.   put empty into Mode
  3955. end DrawBarGraph
  3956.  
  3957. on DrawPlotGraph
  3958.   global XCoords, YCoords, XMax, XMin, YMax, YMin, GLeft, GRight, GTop, GBottom, Mode
  3959.   DrawFrame
  3960.   choose brush tool
  3961.   put (GRight - GLeft)/(XMax - XMin) into XScale
  3962.   put (GBottom - GTop)/(YMax - YMin) into YScale
  3963.   if XCoords is empty then put 1 into X1
  3964.   else put item 1 of XCoords into X1
  3965.   if X1 is empty then put 0 into X1
  3966.   put GLeft + round((X1 - XMin)*XScale) into X1
  3967.   put item 1 of YCoords into Y1
  3968.   if Y1 is empty then put 0 into Y1
  3969.   put GBottom - round((Y1 - YMin)*YScale) into Y1
  3970.   click at X1,Y1
  3971.   repeat with i = 2 to the number of items in YCoords
  3972.     if XCoords is empty then put i into X2
  3973.     else put item i of XCoords into X2
  3974.     if X2 is empty then put 0 into X2
  3975.     put GLeft + round((X2 - XMin)*XScale) into X2
  3976.     put item i of YCoords into Y2
  3977.     if Y2 is empty then put 0 into Y2
  3978.     put GBottom - round((Y2 - YMin)*YScale) into Y2
  3979.     click at X2,Y2
  3980.   end repeat
  3981.   choose browse tool
  3982.   put empty into Mode
  3983. end DrawPlotGraph
  3984.  
  3985. on drawPieGraph
  3986.   global Xo, Yo, Center, Radius, Percents, Mode
  3987.   set lineSize to 1
  3988.   put line 1 of field "GraphArea" into GraphArea
  3989.   put the Top of card field id GraphArea into GTop
  3990.   put the Bottom of card field id GraphArea into GBottom
  3991.   put the Left of card field id GraphArea into GLeft
  3992.   put the Right of card field id GraphArea into GRight
  3993.   put round(min((GBottom-GTop),(GRight-GLeft))/2) into Radius
  3994.   put the location of card field id GraphArea into Center
  3995.   put item 1 of Center into Xo
  3996.   put item 2 of Center into Yo
  3997.   put 0 into percentage
  3998.   put 0 into total
  3999.   repeat with i = 1 to the number of lines in field "YValues"
  4000.     put item 1 of line i of field "YValues" into amount
  4001.     if amount is not 0
  4002.     then
  4003.     add amount to total
  4004.     if i is not 1 then put "," after amounts
  4005.     put amount after amounts
  4006.   end if
  4007. end repeat
  4008. put empty into percents
  4009. repeat with i = 1 to the number of items in amounts
  4010.   put (item i of amounts)/total into item i of percents
  4011. end repeat
  4012. set pattern to 12
  4013. set lineSize to 1
  4014. DrawCircle
  4015. set lineSize to  4
  4016. DrawRays
  4017. set pattern to 1
  4018. set lineSize to  2
  4019. DrawRays
  4020. add 2 to radius
  4021. set lineSize to 3
  4022. DrawCircle
  4023. ShadePie
  4024. choose Text tool
  4025. set the textFont to "Geneva"
  4026. set the textSize to 12
  4027. set the textAlign to "center"
  4028. set the textStyle to plain
  4029. put round(Yo + radius + 28) into Yo
  4030. click at Xo,Yo
  4031. type field "YLabel"
  4032. choose browse tool
  4033. put empty into Mode
  4034. end DrawPieGraph
  4035.  
  4036. on DrawCircle
  4037.   global Xo, Yo, radius
  4038.   choose oval tool
  4039.   set centered to true
  4040.   drag from Xo,Yo to (Xo+radius),(Yo+radius) with optionKey
  4041.   set Centered to false
  4042. end DrawCircle
  4043.  
  4044. on DrawRays
  4045.   global Xo,Yo, radius, percents
  4046.   put 0 into percentage
  4047.   put radius*sin(0) into Y
  4048.   put radius*cos(0) into X
  4049.   drag from Xo,Yo to round(Xo+X),round(Yo+Y) with optionkey
  4050.   put the number of items in percents into final
  4051.   drag from Xo,Yo to round(Xo+X),round(Yo+Y) with optionkey
  4052.   repeat with i = 1 to final
  4053.     add 2*(item i of percents) to percentage
  4054.     put radius*sin(percentage*pi) into Y
  4055.     put radius*cos(percentage*pi) into X
  4056.     choose line tool
  4057.     drag from Xo,Yo to round(Xo+X),round(Yo+Y) with optionKey
  4058.   end repeat
  4059. end DrawRays
  4060.  
  4061. on ShadePie
  4062.   global Xo,Yo, radius, percents
  4063.   put .9*radius into radius
  4064.   put 0 into percentage
  4065.   put 2 into patternNumber
  4066.   choose bucket tool
  4067.   put the number of items in percents into final
  4068.   repeat with i = 1 to final
  4069.     put item i of percents into percent
  4070.     put (percentage + (percent))*pi into clickAngle
  4071.     add 2*(percent) to percentage
  4072.     add 1 to patternNumber
  4073.     set the pattern to PatternNumber
  4074.     put round(Yo+(Radius*sin(clickAngle))) into Y
  4075.     put round(Xo+(Radius*cos(clickAngle))) into X
  4076.     if percent*radius > 1 then click at X,Y
  4077.   end repeat
  4078.   set the pattern to 12
  4079. end ShadePie
  4080.  
  4081. on ShadowField
  4082.   global Frame
  4083.   requestPatience
  4084.   put (3 + item 3 of Frame) & "," & (8 + item 2 of Frame) into start
  4085.   put (3 + item 3 of Frame) & "," & (3 + item 4 of Frame) into corner
  4086.   put (8 + item 1 of Frame) & "," & (3 + item 4 of Frame) into finish
  4087.   choose brush tool
  4088.   set brush to 3
  4089.   set pattern to 12
  4090.   drag from start to corner
  4091.   drag from corner to finish
  4092.   choose browse tool
  4093. end ShadowField
  4094.  
  4095. on BorderField
  4096.   global Frame
  4097.   set lineSize to 4
  4098.   choose rectangle tool
  4099.   put 4 + (item 3 of Frame) & "," & 4 + (item 4 of Frame) into start
  4100.   put (item 1 of Frame) - 4 & "," & (item 2 of Frame) - 4 into finish
  4101.   drag from start to finish
  4102. end BorderField
  4103.  
  4104.  
  4105.  
  4106.  
  4107.  
  4108. -- part 244 (field)
  4109. -- low flags: 80
  4110. -- high flags: 0004
  4111. -- rect: left=346 top=39 right=78 bottom=474
  4112. -- title width / last selected line: 0
  4113. -- icon id / first selected line: 0 / 0
  4114. -- text alignment: 65535
  4115. -- font id: 3
  4116. -- text size: 12
  4117. -- style flags: 0
  4118. -- line height: 16
  4119. -- part name: Bulger
  4120.  
  4121.  
  4122. -- part 249 (button)
  4123. -- low flags: 80
  4124. -- high flags: 2002
  4125. -- rect: left=319 top=320 right=338 bottom=343
  4126. -- title width / last selected line: 0
  4127. -- icon id / first selected line: 23880 / 23880
  4128. -- text alignment: 1
  4129. -- font id: 0
  4130. -- text size: 12
  4131. -- style flags: 0
  4132. -- line height: 16
  4133. -- part name: CreateShimmerField
  4134. ----- HyperTalk script -----
  4135. on mouseUp
  4136.   if the optionKey is up then CreateField 205
  4137.   else GiveHelp "ShimmerField┬á"
  4138. end mouseUp
  4139.  
  4140. on mouseDown
  4141. end mouseDown
  4142.  
  4143.  
  4144. -- part 250 (button)
  4145. -- low flags: 80
  4146. -- high flags: 2002
  4147. -- rect: left=343 top=320 right=338 bottom=367
  4148. -- title width / last selected line: 0
  4149. -- icon id / first selected line: 22584 / 22584
  4150. -- text alignment: 1
  4151. -- font id: 0
  4152. -- text size: 12
  4153. -- style flags: 0
  4154. -- line height: 16
  4155. -- part name: CreateBulger
  4156. ----- HyperTalk script -----
  4157. on mouseUp
  4158.   if the optionKey is up then CreateField 244
  4159.   else GiveHelp "Bulger┬á"
  4160. end mouseUp
  4161.  
  4162. on mouseDown
  4163. end mouseDown
  4164.  
  4165.  
  4166. -- part 251 (button)
  4167. -- low flags: 80
  4168. -- high flags: 2002
  4169. -- rect: left=367 top=320 right=338 bottom=391
  4170. -- title width / last selected line: 0
  4171. -- icon id / first selected line: 32072 / 32072
  4172. -- text alignment: 1
  4173. -- font id: 0
  4174. -- text size: 12
  4175. -- style flags: 0
  4176. -- line height: 16
  4177. -- part name: MakeRectangleField
  4178. ----- HyperTalk script -----
  4179. on mouseUp
  4180.   if the optionKey is up then CreateField 137
  4181.   else GiveHelp "Rectangle┬á"
  4182. end mouseUp
  4183.  
  4184. on mouseDown
  4185. end mouseDown
  4186.  
  4187.  
  4188. -- part 252 (button)
  4189. -- low flags: 80
  4190. -- high flags: 2002
  4191. -- rect: left=391 top=320 right=338 bottom=415
  4192. -- title width / last selected line: 0
  4193. -- icon id / first selected line: 13637 / 13637
  4194. -- text alignment: 1
  4195. -- font id: 0
  4196. -- text size: 12
  4197. -- style flags: 0
  4198. -- line height: 16
  4199. -- part name: MakeScrolling
  4200. ----- HyperTalk script -----
  4201. on mouseUp
  4202.   if the optionKey is up then CreateField 141
  4203.   else GiveHelp "Scrolling┬á"
  4204. end mouseUp
  4205.  
  4206. on mouseDown
  4207. end mouseDown
  4208.  
  4209.  
  4210. -- part 253 (button)
  4211. -- low flags: 80
  4212. -- high flags: 2002
  4213. -- rect: left=415 top=320 right=338 bottom=439
  4214. -- title width / last selected line: 0
  4215. -- icon id / first selected line: 13636 / 13636
  4216. -- text alignment: 1
  4217. -- font id: 0
  4218. -- text size: 12
  4219. -- style flags: 0
  4220. -- line height: 16
  4221. -- part name: 
  4222. ----- HyperTalk script -----
  4223. on mouseUp
  4224.   if the optionKey is up then MakeTypeWriterField
  4225.   else GiveHelp "TypeWriterΓǪ"
  4226. end mouseUp
  4227.  
  4228. on mouseDown
  4229. end mouseDown
  4230.  
  4231.  
  4232. -- part 254 (button)
  4233. -- low flags: 80
  4234. -- high flags: 2002
  4235. -- rect: left=439 top=320 right=338 bottom=463
  4236. -- title width / last selected line: 0
  4237. -- icon id / first selected line: 28606 / 28606
  4238. -- text alignment: 1
  4239. -- font id: 0
  4240. -- text size: 12
  4241. -- style flags: 0
  4242. -- line height: 16
  4243. -- part name: 
  4244. ----- HyperTalk script -----
  4245. on mouseUp
  4246.   if the optionKey is up then MakeAutoScroll
  4247.   else GiveHelp "AutoScrollΓǪ"
  4248. end mouseUp
  4249.  
  4250. on mouseDown
  4251. end mouseDown
  4252.  
  4253.  
  4254. -- part 255 (button)
  4255. -- low flags: 80
  4256. -- high flags: 2002
  4257. -- rect: left=300 top=320 right=338 bottom=322
  4258. -- title width / last selected line: 0
  4259. -- icon id / first selected line: 1909 / 1909
  4260. -- text alignment: 1
  4261. -- font id: 0
  4262. -- text size: 12
  4263. -- style flags: 0
  4264. -- line height: 16
  4265. -- part name: MakeInverter
  4266. ----- HyperTalk script -----
  4267. on mouseUp
  4268.   if the optionKey is up then CreateButton 292
  4269.   else GiveHelp "Inverter┬á"
  4270. end mouseUp
  4271.  
  4272. on mouseDown
  4273. end MouseDown
  4274.  
  4275.  
  4276. -- part 256 (button)
  4277. -- low flags: 80
  4278. -- high flags: 2002
  4279. -- rect: left=322 top=320 right=338 bottom=344
  4280. -- title width / last selected line: 0
  4281. -- icon id / first selected line: 9560 / 9560
  4282. -- text alignment: 1
  4283. -- font id: 0
  4284. -- text size: 12
  4285. -- style flags: 0
  4286. -- line height: 16
  4287. -- part name: MakeGreyOut
  4288. ----- HyperTalk script -----
  4289. on mouseUp
  4290.   if the optionKey is up then CreateButton 139
  4291.   else GiveHelp "GreyOut┬á"
  4292. end mouseUp
  4293.  
  4294. on MouseDown
  4295. end MouseDown
  4296.  
  4297.  
  4298. -- part 257 (button)
  4299. -- low flags: 80
  4300. -- high flags: 2002
  4301. -- rect: left=416 top=320 right=338 bottom=438
  4302. -- title width / last selected line: 0
  4303. -- icon id / first selected line: 7619 / 7619
  4304. -- text alignment: 1
  4305. -- font id: 0
  4306. -- text size: 12
  4307. -- style flags: 0
  4308. -- line height: 16
  4309. -- part name: MakeStepper
  4310. ----- HyperTalk script -----
  4311. on mouseUp
  4312.   if the optionKey is up then CreateButton 140
  4313.   else GiveHelp "Stepper┬á"
  4314. end mouseUp
  4315.  
  4316. on MouseDown
  4317. end MouseDown
  4318.  
  4319.  
  4320. -- part 258 (button)
  4321. -- low flags: 80
  4322. -- high flags: 2002
  4323. -- rect: left=233 top=320 right=338 bottom=255
  4324. -- title width / last selected line: 0
  4325. -- icon id / first selected line: 15276 / 15276
  4326. -- text alignment: 1
  4327. -- font id: 0
  4328. -- text size: 12
  4329. -- style flags: 0
  4330. -- line height: 16
  4331. -- part name: WavyLine
  4332. ----- HyperTalk script -----
  4333. on mouseUp
  4334.   if the optionKey is up then MakeLine "Wavy"
  4335.   else GiveHelp "Wavy LineΓǪ"
  4336. end mouseUp
  4337.  
  4338. on MouseDown
  4339. end MouseDown
  4340.  
  4341.  
  4342. -- part 259 (button)
  4343. -- low flags: 80
  4344. -- high flags: 2002
  4345. -- rect: left=255 top=320 right=338 bottom=277
  4346. -- title width / last selected line: 0
  4347. -- icon id / first selected line: 10276 / 10276
  4348. -- text alignment: 1
  4349. -- font id: 0
  4350. -- text size: 12
  4351. -- style flags: 0
  4352. -- line height: 16
  4353. -- part name: DottedLines
  4354. ----- HyperTalk script -----
  4355. on mouseUp
  4356.   if the optionKey is up then MakeLine "Dotted"
  4357.   else GiveHelp "Dotted LineΓǪ"
  4358. end mouseUp
  4359.  
  4360. on mousedown
  4361. end mousedown
  4362.  
  4363.  
  4364. -- part 260 (button)
  4365. -- low flags: 80
  4366. -- high flags: 2002
  4367. -- rect: left=299 top=320 right=338 bottom=321
  4368. -- title width / last selected line: 0
  4369. -- icon id / first selected line: 2444 / 2444
  4370. -- text alignment: 1
  4371. -- font id: 0
  4372. -- text size: 12
  4373. -- style flags: 0
  4374. -- line height: 16
  4375. -- part name: WavyArrows
  4376. ----- HyperTalk script -----
  4377. on mouseUp
  4378.   if the optionKey is up then MakeArrow "Wavy"
  4379.   else GiveHelp "Wavy ArrowΓǪ"
  4380. end mouseUp
  4381.  
  4382. on mouseDown
  4383. end mouseDown
  4384.  
  4385.  
  4386.  
  4387. -- part 261 (button)
  4388. -- low flags: 80
  4389. -- high flags: 2002
  4390. -- rect: left=321 top=320 right=338 bottom=343
  4391. -- title width / last selected line: 0
  4392. -- icon id / first selected line: 11175 / 11175
  4393. -- text alignment: 1
  4394. -- font id: 0
  4395. -- text size: 12
  4396. -- style flags: 0
  4397. -- line height: 16
  4398. -- part name: DottedArrows
  4399. ----- HyperTalk script -----
  4400. on mouseUp
  4401.   if the optionKey is up then MakeArrow "Dotted"
  4402.   else GiveHelp "Dotted ArrowΓǪ"
  4403. end mouseUp
  4404.  
  4405. on mouseDown
  4406. end mouseDown
  4407.  
  4408.  
  4409.  
  4410. -- part 262 (button)
  4411. -- low flags: 80
  4412. -- high flags: 2002
  4413. -- rect: left=350 top=320 right=338 bottom=374
  4414. -- title width / last selected line: 0
  4415. -- icon id / first selected line: 26434 / 26434
  4416. -- text alignment: 1
  4417. -- font id: 0
  4418. -- text size: 12
  4419. -- style flags: 0
  4420. -- line height: 16
  4421. -- part name: BorderField
  4422. ----- HyperTalk script -----
  4423. on mouseUp
  4424.   if the optionKey is up then SetMode "BorderField"
  4425.   else GiveHelp "Border FieldΓǪ"
  4426. end mouseUp
  4427.  
  4428. on mouseDown
  4429. end mouseDown
  4430.  
  4431.  
  4432.  
  4433.  
  4434. -- part 263 (button)
  4435. -- low flags: 80
  4436. -- high flags: 2002
  4437. -- rect: left=374 top=320 right=338 bottom=398
  4438. -- title width / last selected line: 0
  4439. -- icon id / first selected line: 38 / 38
  4440. -- text alignment: 1
  4441. -- font id: 0
  4442. -- text size: 12
  4443. -- style flags: 0
  4444. -- line height: 16
  4445. -- part name: ShaddowField
  4446. ----- HyperTalk script -----
  4447. on mouseUp
  4448.   if the optionKey is up then SetMode "ShadowField"
  4449.   else GiveHelp "Shadow FieldΓǪ"
  4450. end mouseUp
  4451.  
  4452. on MouseDown
  4453. end MouseDown
  4454.  
  4455.  
  4456. -- part 264 (button)
  4457. -- low flags: 80
  4458. -- high flags: 2002
  4459. -- rect: left=398 top=320 right=338 bottom=422
  4460. -- title width / last selected line: 0
  4461. -- icon id / first selected line: 27249 / 27249
  4462. -- text alignment: 1
  4463. -- font id: 0
  4464. -- text size: 12
  4465. -- style flags: 0
  4466. -- line height: 16
  4467. -- part name: ConnectFields
  4468. ----- HyperTalk script -----
  4469. on mouseUp
  4470.   if the optionKey is up then SetMode "Connect1",2
  4471.   else GiveHelp "Connect FieldsΓǪ"
  4472. end mouseUp
  4473.  
  4474. on MouseDown
  4475. end MouseDown
  4476.  
  4477.  
  4478. -- part 265 (button)
  4479. -- low flags: 80
  4480. -- high flags: 2002
  4481. -- rect: left=422 top=320 right=338 bottom=446
  4482. -- title width / last selected line: 0
  4483. -- icon id / first selected line: 4994 / 4994
  4484. -- text alignment: 1
  4485. -- font id: 0
  4486. -- text size: 12
  4487. -- style flags: 0
  4488. -- line height: 16
  4489. -- part name: MakeGraph
  4490. ----- HyperTalk script -----
  4491. on mouseUp
  4492.   if the optionKey is up then send MakeGraph to field Scripts
  4493.   else GiveHelp "GraphΓǪ"
  4494. end mouseUp
  4495.  
  4496. on MouseDown
  4497. end MouseDown
  4498.  
  4499.  
  4500. -- part 266 (button)
  4501. -- low flags: 80
  4502. -- high flags: 0001
  4503. -- rect: left=426 top=254 right=292 bottom=433
  4504. -- title width / last selected line: 0
  4505. -- icon id / first selected line: 0 / 0
  4506. -- text alignment: 1
  4507. -- font id: 0
  4508. -- text size: 12
  4509. -- style flags: 0
  4510. -- line height: 16
  4511. -- part name: CursorCover
  4512. ----- HyperTalk script -----
  4513. on mouseUp
  4514. end mouseUp
  4515.  
  4516. on mousedown
  4517. end mousedown
  4518.  
  4519.  
  4520. -- part 270 (button)
  4521. -- low flags: 80
  4522. -- high flags: 0002
  4523. -- rect: left=0 top=286 right=303 bottom=13
  4524. -- title width / last selected line: 0
  4525. -- icon id / first selected line: 6723 / 6723
  4526. -- text alignment: 1
  4527. -- font id: 0
  4528. -- text size: 12
  4529. -- style flags: 0
  4530. -- line height: 16
  4531. -- part name: PopUp
  4532. ----- HyperTalk script -----
  4533. on mouseUp
  4534. end mouseUp
  4535.  
  4536. on mouseDown
  4537. end mouseDown
  4538.  
  4539.  
  4540. -- part 123 (button)
  4541. -- low flags: 80
  4542. -- high flags: 0000
  4543. -- rect: left=0 top=282 right=309 bottom=13
  4544. -- title width / last selected line: 0
  4545. -- icon id / first selected line: 0 / 0
  4546. -- text alignment: 1
  4547. -- font id: 0
  4548. -- text size: 12
  4549. -- style flags: 0
  4550. -- line height: 16
  4551. -- part name: PopItUp
  4552. ----- HyperTalk script -----
  4553. on mouseUp
  4554.   if the optionKey is down then
  4555.     GiveHelp "PopUp┬á"
  4556.   else pass mouseUp
  4557. end mouseUp
  4558.  
  4559. on mousedown
  4560.   if the optionKey is up then pass mouseDown
  4561. end mouseDown
  4562.  
  4563.  
  4564. -- part 271 (button)
  4565. -- low flags: 80
  4566. -- high flags: 2000
  4567. -- rect: left=0 top=158 right=191 bottom=13
  4568. -- title width / last selected line: 0
  4569. -- icon id / first selected line: 16560 / 16560
  4570. -- text alignment: 1
  4571. -- font id: 0
  4572. -- text size: 12
  4573. -- style flags: 0
  4574. -- line height: 16
  4575. -- part name: Link
  4576. ----- HyperTalk script -----
  4577. on mouseUp
  4578.   if the optionKey is down then GiveHelp "LinkΓǪ"
  4579.   else pass mouseUp
  4580. end mouseUp
  4581.  
  4582. on mousedown
  4583.   if the optionKey is up then pass mouseDown
  4584. end mouseDown
  4585.  
  4586.  
  4587. -- part 272 (button)
  4588. -- low flags: 80
  4589. -- high flags: 0002
  4590. -- rect: left=0 top=204 right=221 bottom=13
  4591. -- title width / last selected line: 0
  4592. -- icon id / first selected line: 942 / 942
  4593. -- text alignment: 1
  4594. -- font id: 0
  4595. -- text size: 12
  4596. -- style flags: 0
  4597. -- line height: 16
  4598. -- part name: Graph
  4599.  
  4600.  
  4601. -- part 273 (button)
  4602. -- low flags: 80
  4603. -- high flags: 0002
  4604. -- rect: left=0 top=246 right=263 bottom=13
  4605. -- title width / last selected line: 0
  4606. -- icon id / first selected line: 3893 / 3893
  4607. -- text alignment: 1
  4608. -- font id: 0
  4609. -- text size: 12
  4610. -- style flags: 0
  4611. -- line height: 16
  4612. -- part name: Draw
  4613.  
  4614.  
  4615. -- part 267 (button)
  4616. -- low flags: 80
  4617. -- high flags: 0000
  4618. -- rect: left=0 top=194 right=232 bottom=13
  4619. -- title width / last selected line: 0
  4620. -- icon id / first selected line: 0 / 0
  4621. -- text alignment: 1
  4622. -- font id: 0
  4623. -- text size: 12
  4624. -- style flags: 0
  4625. -- line height: 16
  4626. -- part name: Graph
  4627. ----- HyperTalk script -----
  4628. on mouseUp
  4629.   if the optionKey is down then GiveHelp "Draw Graph┬á"
  4630.   else pass mouseUp
  4631. end mouseUp
  4632.  
  4633. on mousedown
  4634.   if the optionKey is up then pass mouseDown
  4635. end mouseDown
  4636.  
  4637.  
  4638. -- part 277 (field)
  4639. -- low flags: 81
  4640. -- high flags: 2004
  4641. -- rect: left=114 top=41 right=298 bottom=390
  4642. -- title width / last selected line: 0
  4643. -- icon id / first selected line: 0 / 0
  4644. -- text alignment: 1
  4645. -- font id: 0
  4646. -- text size: 12
  4647. -- style flags: 0
  4648. -- line height: 16
  4649. -- part name: RequestGraphType
  4650.  
  4651.  
  4652. -- part 278 (button)
  4653. -- low flags: 80
  4654. -- high flags: 8004
  4655. -- rect: left=206 top=140 right=162 bottom=306
  4656. -- title width / last selected line: 0
  4657. -- icon id / first selected line: 0 / 0
  4658. -- text alignment: 1
  4659. -- font id: 0
  4660. -- text size: 12
  4661. -- style flags: 0
  4662. -- line height: 16
  4663. -- part name: Line Graph
  4664. ----- HyperTalk script -----
  4665. on mouseUp
  4666.   global Mode
  4667.   put "Line" into mode
  4668.   send RecordGraphType to field "Scripts"
  4669. end mouseUp
  4670.  
  4671. on mousedown
  4672. end mousedown
  4673.  
  4674.  
  4675. -- part 279 (button)
  4676. -- low flags: 80
  4677. -- high flags: 8004
  4678. -- rect: left=206 top=174 right=196 bottom=306
  4679. -- title width / last selected line: 0
  4680. -- icon id / first selected line: 0 / 0
  4681. -- text alignment: 1
  4682. -- font id: 0
  4683. -- text size: 12
  4684. -- style flags: 0
  4685. -- line height: 16
  4686. -- part name: Bar Graph
  4687. ----- HyperTalk script -----
  4688. on mouseUp
  4689.   global Mode
  4690.   put "Bar" into mode
  4691.   send RecordGraphType to field "Scripts"
  4692. end mouseUp
  4693.  
  4694. on mousedown
  4695. end mousedown
  4696.  
  4697.  
  4698. -- part 280 (button)
  4699. -- low flags: 80
  4700. -- high flags: 8004
  4701. -- rect: left=206 top=207 right=229 bottom=306
  4702. -- title width / last selected line: 0
  4703. -- icon id / first selected line: 0 / 0
  4704. -- text alignment: 1
  4705. -- font id: 0
  4706. -- text size: 12
  4707. -- style flags: 0
  4708. -- line height: 16
  4709. -- part name: Plot Graph
  4710. ----- HyperTalk script -----
  4711. on mouseUp
  4712.   global Mode
  4713.   put "Plot" into mode
  4714.   send RecordGraphType to field "Scripts"
  4715. end mouseUp
  4716.  
  4717. on mousedown
  4718. end mousedown
  4719.  
  4720.  
  4721. -- part 281 (button)
  4722. -- low flags: 80
  4723. -- high flags: 8004
  4724. -- rect: left=206 top=239 right=261 bottom=306
  4725. -- title width / last selected line: 0
  4726. -- icon id / first selected line: 0 / 0
  4727. -- text alignment: 1
  4728. -- font id: 0
  4729. -- text size: 12
  4730. -- style flags: 0
  4731. -- line height: 16
  4732. -- part name: Pie Graph
  4733. ----- HyperTalk script -----
  4734. on mouseUp
  4735.   global Mode
  4736.   put "Pie" into mode
  4737.   send RecordGraphType to field "Scripts"
  4738. end mouseUp
  4739.  
  4740. on mousedown
  4741. end mousedown
  4742.  
  4743.  
  4744. -- part 282 (button)
  4745. -- low flags: 80
  4746. -- high flags: A003
  4747. -- rect: left=386 top=284 right=306 bottom=486
  4748. -- title width / last selected line: 0
  4749. -- icon id / first selected line: 0 / 0
  4750. -- text alignment: 1
  4751. -- font id: 0
  4752. -- text size: 12
  4753. -- style flags: 0
  4754. -- line height: 16
  4755. -- part name: Area╩Okay
  4756. ----- HyperTalk script -----
  4757. on mouseUp
  4758.   FinishColumns
  4759. end mouseUp
  4760.  
  4761. on mouseDown
  4762. end mouseDown
  4763.  
  4764.  
  4765. -- part 283 (field)
  4766. -- low flags: 80
  4767. -- high flags: 0002
  4768. -- rect: left=456 top=0 right=13 bottom=491
  4769. -- title width / last selected line: 0
  4770. -- icon id / first selected line: 0 / 0
  4771. -- text alignment: 1
  4772. -- font id: 3
  4773. -- text size: 9
  4774. -- style flags: 256
  4775. -- line height: 10
  4776. -- part name: CardNumber
  4777. ----- HyperTalk script -----
  4778. on mousedown
  4779. end mousedown
  4780.  
  4781. on mouseup
  4782. end mouseup
  4783.  
  4784.  
  4785.  
  4786. -- part 284 (button)
  4787. -- low flags: 80
  4788. -- high flags: A002
  4789. -- rect: left=498 top=109 right=127 bottom=512
  4790. -- title width / last selected line: 0
  4791. -- icon id / first selected line: 0 / 0
  4792. -- text alignment: 1
  4793. -- font id: 0
  4794. -- text size: 12
  4795. -- style flags: 2048
  4796. -- line height: 16
  4797. -- part name: F
  4798. ----- HyperTalk script -----
  4799. on mouseUp
  4800.   if the optionKey is up then doMenu "Other FontΓǪ"
  4801.   else GiveHelp "Other FontΓǪ"
  4802. end mouseUp
  4803.  
  4804. on mouseDown
  4805. end mouseDown
  4806.  
  4807.  
  4808. -- part 285 (button)
  4809. -- low flags: 80
  4810. -- high flags: A002
  4811. -- rect: left=498 top=130 right=148 bottom=512
  4812. -- title width / last selected line: 0
  4813. -- icon id / first selected line: 0 / 0
  4814. -- text alignment: 1
  4815. -- font id: 0
  4816. -- text size: 12
  4817. -- style flags: 2048
  4818. -- line height: 16
  4819. -- part name: S
  4820. ----- HyperTalk script -----
  4821. on mouseUp
  4822.   if the optionKey is up then doMenu "Change StyleΓǪ"
  4823.   else GiveHelp "Change StyleΓǪ"
  4824. end mouseUp
  4825.  
  4826. on mouseDown
  4827. end mouseDown
  4828.  
  4829.  
  4830. -- part 292 (button)
  4831. -- low flags: 80
  4832. -- high flags: 4000
  4833. -- rect: left=386 top=217 right=249 bottom=486
  4834. -- title width / last selected line: 0
  4835. -- icon id / first selected line: 0 / 0
  4836. -- text alignment: 1
  4837. -- font id: 0
  4838. -- text size: 12
  4839. -- style flags: 0
  4840. -- line height: 16
  4841. -- part name: Inverter
  4842.  
  4843.  
  4844. -- part 293 (button)
  4845. -- low flags: 80
  4846. -- high flags: 2002
  4847. -- rect: left=476 top=320 right=338 bottom=500
  4848. -- title width / last selected line: 0
  4849. -- icon id / first selected line: 17038 / 17038
  4850. -- text alignment: 1
  4851. -- font id: 0
  4852. -- text size: 12
  4853. -- style flags: 0
  4854. -- line height: 16
  4855. -- part name: Protect Recent
  4856. ----- HyperTalk script -----
  4857. on mouseUp
  4858.   if the optionKey is up then domenu "Protect Visible┬á"
  4859.   else GiveHelp "Protect Visible┬á"
  4860. end mouseUp
  4861.  
  4862. on mouseDown
  4863. end mouseDown
  4864.  
  4865.  
  4866. -- part 294 (field)
  4867. -- low flags: 81
  4868. -- high flags: 2002
  4869. -- rect: left=13 top=13 right=309 bottom=490
  4870. -- title width / last selected line: 0
  4871. -- icon id / first selected line: 0 / 0
  4872. -- text alignment: 1
  4873. -- font id: 0
  4874. -- text size: 12
  4875. -- style flags: 0
  4876. -- line height: 16
  4877. -- part name: Credits
  4878. ----- HyperTalk script -----
  4879. on mousedown
  4880. end mousedown
  4881.  
  4882. on MouseUp
  4883.   put empty into msg
  4884.   hide msg
  4885.   hide background button "Smart Help"
  4886.   hide me
  4887.   send RestoreCard to Field "Scripts"
  4888.   show menubar
  4889. end MouseUp
  4890.  
  4891.  
  4892. -- part 296 (button)
  4893. -- low flags: 80
  4894. -- high flags: 0000
  4895. -- rect: left=390 top=277 right=309 bottom=490
  4896. -- title width / last selected line: 0
  4897. -- icon id / first selected line: 0 / 0
  4898. -- text alignment: 1
  4899. -- font id: 0
  4900. -- text size: 12
  4901. -- style flags: 0
  4902. -- line height: 16
  4903. -- part name: Vanilla
  4904.  
  4905.  
  4906. -- part 297 (button)
  4907. -- low flags: 80
  4908. -- high flags: 2002
  4909. -- rect: left=438 top=320 right=338 bottom=455
  4910. -- title width / last selected line: 0
  4911. -- icon id / first selected line: 9729 / 9729
  4912. -- text alignment: 1
  4913. -- font id: 0
  4914. -- text size: 12
  4915. -- style flags: 0
  4916. -- line height: 16
  4917. -- part name: MakeVanilla
  4918. ----- HyperTalk script -----
  4919. on mouseUp
  4920.   if the optionKey is up then CreateButton 296
  4921.   else GiveHelp "Vanilla┬á"
  4922. end mouseUp
  4923.  
  4924. on MouseDown
  4925. end MouseDown
  4926.  
  4927.  
  4928. -- part 305 (button)
  4929. -- low flags: 80
  4930. -- high flags: 8003
  4931. -- rect: left=388 top=65 right=87 bottom=477
  4932. -- title width / last selected line: 0
  4933. -- icon id / first selected line: 0 / 0
  4934. -- text alignment: 1
  4935. -- font id: 0
  4936. -- text size: 12
  4937. -- style flags: 0
  4938. -- line height: 16
  4939. -- part name: Smart Help
  4940. ----- HyperTalk script -----
  4941. on mouseDown
  4942.   GiveHelp "General Introduction┬á"
  4943. end mouseDown
  4944.  
  4945. on mouseUp
  4946. end mouseUp
  4947.  
  4948.  
  4949.  
  4950. -- part 306 (field)
  4951. -- low flags: 80
  4952. -- high flags: 0000
  4953. -- rect: left=70 top=320 right=340 bottom=137
  4954. -- title width / last selected line: 0
  4955. -- icon id / first selected line: 0 / 0
  4956. -- text alignment: 0
  4957. -- font id: 3
  4958. -- text size: 12
  4959. -- style flags: 0
  4960. -- line height: 16
  4961. -- part name: AutoReset true
  4962. ----- HyperTalk script -----
  4963. --To avoid interfering with the way SmartSlides handles mouseclicks,
  4964. --be sure to keep both a mouseUp and a mouseDown handler
  4965. --in the script of this field.
  4966.  
  4967. on mouseDown
  4968. end mouseDown
  4969.  
  4970. on mouseUp
  4971. end mouseUp
  4972.  
  4973.